All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.
- feat: Add validation for the attributes processor #1721
- feat(ConfigProvider)!: Modify config merge to do replace instead of update for Specific tags for Remotely managed collectors #1604
- chore(ci): remove MSIs from this repo #1693
- chore: Upgrade otel core to v114 #1714
- fix(opamp): Update OpAmp default endpoint to a new one that supports redirection #1709
- feat(k8s_tagger): Added pagination when fetching(List) pods from the k8s API #1689
- chore: Upgraded otel core to 0.108.0 #1678
- Remove unnecessary warnings from the k8s tagger #1681
- fix(version): Fixing the changelog and version for otel collector #1674
- feat(opamp): Add support for new source templates (elastic, mysql, postgres, rabbitmq, redis) #1657
- fix(jobreceiver): resolve a concurrency issue in the command executor #1660
- chore(deps): chore(deps): bump github.com/docker/docker from 24.0.9+incompatible to 25.0.6+incompatible in /pkg/receiver/telegrafreceiver #1646
- chore(deps): Upgrade go version to 1.21.11 #1650
- chore(deps): chore(deps): bump github.com/docker/docker from 25.0.5+incompatible to 25.0.6+incompatible in /pkg/extension/opampextension #1651
- chore(deps): bump go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp from 0.42.0 to 0.44.0 in /pkg/receiver/telegrafreceiver #1652
- chore(deps): bump google.golang.org/grpc from 1.64.0 to 1.64.1 #1653
- chore(deps): bump github.com/rs/cors from 1.10.1 to 1.11.0 in /pkg/exporter/sumologicexporter #1654
- feat(cascadingfilter): Added status code filtering to cascading filter processor #1600
- docs: Added migration steps for compress_encoding #1605
- feat(opamp): Validate kafkametricsreceiver #1614
- feat: use Sumo Logic exporter from OpenTelemetry repository #1601
- upgrade otelcol core to 0.104.0 #1619
- fix(opamp): Add the Default(env) provider to the provider list in ConfigProviderSettings #1632
- fix(install): Fix script to always install the latest stable version #1645
[v0.102.1-sumo-0]: https://github.com/SumoLogic/sumologic-otel-collector/releases/v0.102.1-sumo-0## v0.100.0-sumo-0
- build: add exceptions connector #1588
- build: add failover connector #1588
- build: add roundrobin connector #1588
- upgrade otelcol core to 0.100.0 #1588
- chore: update otelcol core to v0.99.0 #1560
- fix(sourceprocessor): don't ignore empty annotation values #1569
- fix(windows): Recognize opamp as a config provider #1570
- fix: use the right install script url in orchestrator modules #1581
- feat(otrm): Support validating filter and transform processors in the source templates #1547
- feat: push images to Docker Hub repository #1549
- chore: update otelcol core to v0.98.0 #1538
- fix(build): opampextension replace statement #1539
- fix: default authenticator for sumo extension and exporter #1540
- feat: add missing configproviders (httpprovider, httpsprovider) #1528
- chore: update otelcol core to v0.97.0 #1530
- chore: fix building UBI images #1517
Behavior of recombine operator has been changed. Now it recombines also partial logs, for details please see pull request.
If you use recombine
operator you will observe that logs which do not match regular expression are combined into one log entry.
- feat(opamp): Support adding and validating more receivers and extensions in the source templates #1509
- chore(deps): bump google.golang.org/protobuf to 1.33.0 #1500
- fix(windows): Fixed startup problem when running as a Windows service #1512
See the upgrade guide for more details on the breaking changes.
Behavior of recombine operator has been changed. Now it recombines also partial logs, for details please see pull request.
If you use recombine
operator you will observe that logs which do not match regular expression are combined into one log entry.
- feat(sumologicexporter)!: remove deprecated json_logs #1452
- feat(sumologicexporter)!: remove deprecated clear_logs_timestamp #1455
- ci: build ubi-based images #1440
- feat(k8sprocessor): extract namespace annotations #1457
- ci: build UBI-based FIPS images #1463
- feat: build development version of windows containers #1467
- feat(otrm): Add validation for otel configuration in the opamp agent #1469
- feat(sourceprocessor): use namespace annotations to include/exclude namespace from collection or set sourceCategory, sourceHost, and sourceName #1471
- opampextension: add support for redirection on websocket connect #1481
- chore(k8sprocessor): Improve logging of missing data events #1448
- chore: update otelcol core to v0.95.0 #1474
- chore: update otelcol core to v0.96.0 #1478
Behavior of recombine operator has been changed. Now it recombines also partial logs, for details please see pull request.
If you use recombine
operator you will observe that logs which do not match regular expression are combined into one log entry.
- fix(opamp): restart windows service when configuration update is received via opamp #1453
This was a failed release. Use v0.94.0-sumo-2 instead.
Behavior of recombine operator has been changed. Now it recombines also partial logs, for details please see pull request.
If you use recombine
operator you will observe that logs which do not match regular expression are combined into one log entry.
- feat(servicegraphprocessor)!: remove
servicegraph
processor #1439 Use the Service Graph connector instead.
- feat(install): add support for remote management, ephemeral and api url in Windows installer #1437
- feat(sumologicexporter): Deprecate compress_encoding and remove all of our own compression code in favor of using the confighttp helper #1432
- chore: update otelcol core to v0.94.1 #1446
- fix(install): support --remote-config startup option with Windows services #1443
- chore: upgrade otelcol core to
v0.93.0
#1435
See the upgrade guide for more details on the breaking changes.
- feat(k8sprocessor)!: use Endpointslices for Service metadata #1422 If Service metadata is enabled in k8sprocessor configuration, it needs get/list/watch RBAC permission for EndpointSlices.
- feat(k8sprocessor): add new owner metrics #1426
- fix(k8sprocessor): Pod Service cache invalidation #1425
- fix(sumologicexporter): fix prometheus formatter for non-string data point #1428
- feat: Use sumologic extension base URL to determine the appropriate OpAMP endpoint #1399
- feat: FIPS binary can now be used irrespective of host system's libc & add linux_arm64 FIPS binary. #1416
- fix: prevent the message "Failed to register k8sprocessor's views" on collector startup #1415
- use non-FIPS Windows binary in non-FIPS MSI package #1419 This fixes a bug where the non-FIPS MSI package was bundling the FIPS Windows binary. Starting from now, the non-FIPS MSI package bundles the non-FIPS binary. The FIPS MSI package continues to correctly bundle the FIPS Windows binary, no change here.
- feat(sumologicschemaprocessor)!: deprecate in favor of sumologicprocessor #1316
- Removed deprecated InstallToken #1367
- feat(cascadingfilter): add collector_instances config option for spans_per_second global and policy limits scaling #1358
- feat: add support for sticky session in sumologic extension and sumologic exporter #1363
- chore: upgrade otel core to
v0.91.0
#1393
- fix(k8stagger): allow uppercase characters inside tag keys #1400
- fix(k8stagger)!: change default pod id attribute name to k8s.pod.uid #1401
- sec: don't allow other users to read configuration files #1408
- Removed OpAMP extension remote configuration directory readable validation. #1385
- fix(sourceprocessor): support / in source category template attribute #1389
- chore: remove routing_attributes_to_drop #1201
This option is duplication of
drop_resource_routing_attribute
of routingprocessor - feat(exporter/syslog)!: replace syslog exporter with syslog exporter from opentelemetry-collector-contrib #1341
- feat(sumologicexporter)!: deprecate clear_logs_timestamps #1372
- feat(exporter/syslog): deprecate syslog exporter in favor of upstream version of syslog exporter #1342
- chore: upgrade otel core to 0.90.1 #1351, #1362
- chore: update golang version to 1.21.4 #1364
- chore(sumologicexporter): do not mutate data with json_logs configuration #1374
- chore(sumologicexporter): deprecate json_logs #1377
- feat(sumologicexporter): ensure immutability #1383
- fix(sourceprocessor): fix templating for sourceCategoryPrefix #1350
- chore: update Go to
v1.20.11
#1340
- fix(sourceprocessor): add templating to sourceCategoryPrefix #1339
This was a failed release. Use v0.89.0-sumo-2 instead.
See the upgrade guide for more details on the breaking changes.
- feat(processor/remoteobserver)!: rename
remoteobserver
processor toremotetap
#1333 - feat(exporter/sumologic)!: change default timeout from
5s
to30s
#1332 - feat(extension/sumologic)!: change
discover_collector_tags
to betrue
by default #1330
- feat(receiver/active_directory_inv): add Windows Active Directory Inventory receiver #1273
- feat(opamp): Support OpAmp remote management for the opentelemetry collector, via the --remote-config flag #1310
- feat(processor/sumologic): add upstream
sumologic
processor #1334
-
chore: update otel core to
v0.89.0
#1333 -
feat(processor/sumologicschema): deprecate
sumologic_schema
processor in favor of newly added upstreamsumologic
processor #1334To migrate, simply change the name
sumologic_schema
tosumologic
in your configuration files.
- fix(install): install policycoreutils on RHEL if missing This dependency is necessary for using semanage, which is needed to do SELinux relabeling. #1306
- fix: build release fips binary w/glibc 2.26 #1317
- feat(receiver/monitoringjob): add Monitoring Job receiver #1292
- feat(extension/opamp): OpAMP effective configuration is only derived from the remote_configuration_directory contents and the contents are managed by the extension #1274
- chore: update otelcol to
v0.88.0
#1300
- feat(otelcol-sumo): add --opamp-config flag (provider unimplemented) #1230
- chore: update otelcol core to
v0.87.0
#1279
- fix(k8sprocessor): delay deleting the metadata from owner resources #1242
- fix(k8sprocessor): handle missed k8s resource deletions correctly [#1277]
- fix(build): update journalctl
- chore: update otelcol core to
v0.86.0
#1264 - chore(ci): build fips binary w/ glibc 2.26 #1257
- feat(opampextension): opamp agent type, version, and uid from collector resource and build info #1260
- fix: ensure selinux records are created #1249
- fix(extension/sumologic): send non-empty autodiscovery tag values #1265
- chore: update otelcol core to v0.85.0 #1247
- feat(sumologicextension)!: remove support for
install_token
#1225
See the upgrade guide for more details.
- feat(install.sh): prevent permission error when collecting host metrics #1228
- chore: update otelcol core to v0.84.0 #1235
- chore: upgrade otelcol core to v0.83.0 #1221
- chore(build): require go 1.20 to build components #1221
- fix(sumologicexporter): handle empty histograms correctly #1214
- feat(sumologicexporter): add option to decompose OTLP Histograms #1197
- feat: add remoteobserverprocessor #1207
- chore: upgrade otelcol core to v0.82.0 #1206
- fix: bump vulnerable module go-restful to v3.9.0 #1208
- chore: update opentelemetry core and contrib to v0.81.0 #1187
- chore(packaging): wix 4.0.1 #1184
- updated install.sh to use packages on macOS #1127
-
feat: adding new components #1188:
- chronyreceiver
- oracledbreceiver
- pulsarreceiver
- snowflakereceiver
- chore(sumologicexporter): remove deprecation error messages #1167
- chore: update OT core to v0.80.0 #1169
- fix(sumologicexporter): don't send empty attributes #1174
- fix(build): allow otel commands to be used #1180
- chore: update OT core to v0.79.0 #1158
This release introduces the following breaking changes:
Set force_registatrion: true
in the extension configuration if you don't want the credentials persisted at all.
- feat(receiver/filestats): add File Stats receiver #1146
- feat(receiver/sqlquery): add experimental logs support #1144
- feat(exporter/awss3): add AWS S3 exporter #1149
- chore: update OT to v0.78.0 #1142
- fix: do not send html special characters as unicode #1145
This release introduces the following breaking changes:
-
feat!: disable Prometheus metrics name normalization by default #1138
-
feat(datadogprocessor)!: remove DataDog processor #1135
It doesn't make much sense to include it if the DataDog exporter is not included.
See the upgrade guide for more details.
- feat(k8sprocessor): support otel semantic convention in config #1122
- chore: upgrade OT core to 0.77.0 #1125
- feat(sumologicextension): retry validation and exit in case of connection issues #1134
- fix(sumologicexporter): avoid allocations in compressor #1118
- chore: upgrade OT core to 0.76.1 #1112
- feat: add Service Graph connector #1102
- chore: upgrade OT core to 0.75.0 #1094
- feat!: remove Dotnet Diagnostics receiver #1103
- feat(sumologicschemaprocessor): add translating docker stats resource attributes #1081
- chore: add new components #1091
- cloudflarereceiver
- lokireceiver
- spanmetricsconnector
- chore: upgrade OT core to 0.74.0 #1089
- fix(sumologicexporter): Prometheus histogram metric names #1087
This release introduces the following breaking changes:
- fix(sumologicextension)!: use fqdn before os.Hostname
See the upgrade guide for more details.
- feat!(sumologicschemaprocessor): add translating docker stats metric names #1055
- fix: fix carbon2 parser for telegrafreceiver #1058
- fix(scripts/install.ps1): treat app as not installed if otelcol-sumo.exe is missing #1061
- fix(syslogexporter): set default settings for sending_queue and retry_on_failure #1056
- feat(sumologicextension): enable updateCollectorMetadata feature gate by default #1027 The original feature has been added in #858.
- chore: update OT core to v0.73.0 #1048
- feat(syslogexporter): add mTLS support #980
-
feat(sumologicextension): deprecate
install_token
#969 -
feat(syslogexporter): remove adding additional structure data in syslog exporter #975
-
feat(syslogexporter): change TLS configuration options to opentelemetry configtls #983
-
chore: bump golang to 1.19 #1011
-
chore: update OT core to v0.72.0 #1013
-
chore: add new components #1016
- datadogprocessor
- servicegraphprocessor
- awscloudwatchreceiver
- azureeventhubreceiver
- datadogreceiver
- haproxyreceiver
- iisreceiver
- k8sobjectsreceiver
- otlpjsonfilereceiver
- purefareceiver
- purefbreceiver
- solacereceiver
- sshcheckreceiver
- forwardconnector
- countconnector
-
feat(sumologicexporter): use otlp url suffixes #1015
This release introduces the following breaking changes:
-
feat(sumologicextension): use hostname as default collector name #918
-
feat(script)!: be consistent with installation token naming [#941]
We depracated
--skip-install-token
in favor of--skip-installation-token
andSUMOLOGIC_INSTALL_TOKEN
environmental variable in favor ofSUMOLOGIC_INSTALLATION_TOKEN
. Please update your configuration and automation scripts.
- feat(sourceprocessor): add debug logs for source category filler #944
- feat(snmpreceiver): add SNMP receiver to distro #945
- feat(syslogexporter): add syslog exporter #936
- feat(sourceprocessor): make container name attribute configurable #950
- chore: update OT core to v0.71.0 #958
- fix(k8sprocessor): race condition when getting Pod data #938
- fix release binary versions #943
- feat: Collector metadata tag auto-discovery (local services, e.g. mysql) #893
- feat(extension/opamp): implemented an opamp agent for remote configuration #885
- feat: FIPS compliance #902
- fix(telegrafreceiver): make shutdown safe to call before start #913
- chore: update OT core to v0.70.0 #915
This was a failed release. Use v0.70.0-sumo-1 instead.
- feat(sumologicschemaprocessor): add nesting processor #877
- feat(sumologicschemaprocessor): add allowlist and denylist to nesting processor #880
- feat(sumologicschemaprocessor) allow aggregating attributes with given name patterns #871
- feat(sumologicschemaprocessor): add squashing single values in nesting processor #881
- feat(sumologicschemaprocessor): report attributes as fields #874
- feat(extension/sumologic): mark install_token as opaque #882
- chore: upgrade OT core to v0.68.0
- feature(packaging/msi): add conf.d dir, mv token/tags to common.yaml #869
- feat(ci): build msi packages for dev & release jobs #856
- chore: upgrade OT core to v0.67.0 #867
- fix(otelcolbuilder): use correct upstream modules #864
This release introduces the following breaking changes:
filelog
receiver: has been removed from sub-parsers (upgrade guide) #769sending_queue
: require explicit storage set (upgrade guide) #769apache
receiver: turn on feature gates for resource attributes (upgrade guide) #839elasticsearch
receiver: turn on feature gates for resource attributes (upgrade guide) #848
- feat: add glob config provider #713
- feat(build): validate FIPS mode at build time and runtime #693
- feat(ci): add windows builds to dev & pr jobs #762
- feat(packaging/msi): add msi packaging #852
- fix(sumologicexporter): do not crash if server returns unknown length response #718
- fix(k8sprocessor): fix metadata enrichment #724
- fix(k8sprocessor): keep pod's services information up to date #710
- chore(deps): bump golang from 1.18.4 to 1.19.2 #745
- chore(deps): bump go-boringcrypto to 1.18.7b7 #746
- feat(sourceprocessor): ensure that '_collector' is set before other source headers #824
- chore(deps): upgrade Telegraf to 1.24.3-sumo-1 #828
- chore: upgrade OT core to v0.66.0 #769 #826 #844 #849
- feat(filterprocessor): drop custom changes (upgrade guide) #709 #714
- feat(sumologicexporter): remove translating telegraf metric names (upgrade guide) #678
- feat(sumologicexporter): remove translating attributes (upgrade guide) #672
- feat(sumologicexporter): remove setting source headers (upgrade guide) #686
- fix(k8sprocessor): fix metadata enrichment #725
This release deprecates the following features, which will be removed in v0.60.0
:
- feat(sumologicexporter): deprecate source templates (upgrade guide)
- feat(sumologicexporter): deprecate source templates (upgrade guide)
- feat: define stability levels for components #701
- chore: upgrade OpenTelemetry Core to v0.57.2 #699
This release deprecates the following features, which will be removed in v0.59.0
:
- 'sumologic' exporter: translate attributes (upgrade guide)
- 'sumologic' exporter: translate Telegraf metric names (upgrade guide)
- feat(sumologicschemaprocessor): add translating attributes
- feat: add aerospikereceiver #674
- feat(sumologicschemaprocessor): add translating Telegraf metric names
- feat(sumologicexporter): deprecate translating attributes (upgrade guide)
- chore: upgrade OpenTelemetry Core to v0.56.0 #674
- feat(sumologicexporter): deprecate translating Telegraf metric names (upgrade guide)
- fix(k8sprocessor): only apply the node filter to Pods #668
This release deprecates the following change:
filter
processor: support forexpr
language (upgrade guide)
- feat(cascadingfilter): use LRU Cache for storing sampling decisions #654
- feat(cascadingfilter): use limit for maximum volume of passed spans for which decisions were made earlier #654
- feat(cascadingfilter): store information on which policy filtered the trace in
sampling.filter
#654 - feat(cascadingfilter): store information about late span arrival in
sampling.late_arrival: true
#654 - feat(cascadingfilter): add
otelcol_count_late_spans
andotelcol_count_decided_spans
metrics #654
- feat(sumologicexporter): do not send empty OTLP requests #660
- feat(sumologicexporter): do not retry on '400 Bad Request' response #661
- chore: upgrade OpenTelemetry Core to v0.55.0 #655
- fix(sumologicexporter): translate Telegraf metrics with OTLP format #659
- feat(rawk8seventsreceiver): remember last processed resource version #620
This release adds missing receivers, processors and extensions from the OpenTelemetry Distribution.
It also includes journald
binary required by journaldreceiver
and begin support of arm64 architecture for Darwin OS.
- feat: build arm64 binary for darwin #611
- feat: add missing core receivers, processors and extensions #597, #604, #614
- chore(ci): add pipelines to test and build on Go+BoringCrypto #588
- fix(cascadingfilter): fix leak memory leak on late arriving traces where decision was already made #616
- chore(core): upgrade to v0.53.0 #615
- feat(journaldreceiver): add missing dependencies #577
- ci: disable MacOS builds while signing not possible #628, #629
- fix(cascadingfilter): fix leak memory leak on late arriving traces where decision was already made #619
See Upgrade guide for the breaking changes in this version.
- feat(sumologicexporter)!: remove support for Carbon2 metrics format #590 (upgrade guide)
- feat(sumologicexporter)!: remove support for Graphite metrics format #592 (upgrade guide)
- fix(k8sprocessor): store only necessary Pod data #593
- fix(filelogreceiver): fix changing fingerprint_size #601
- chore(deps): update OT core to v0.52.0 #600
See Upgrade guide for the breaking changes in this version.
- fix(k8sprocessor)!: remove
clusterName
metadata extraction option #578 (upgrade guide) - feat(sumologicexporter)!: attribute translation: change
file.path.resolved
tolog.file.path_resolved
#579 (upgrade guide)
- feat: enable rawk8seventsreceiver #576
- fix: fix(cascadingfilterprocessor): do not attach sampling.rule attribute if trace accept rules are not specified #575
Aside from upstream changes, this release only contains a performance fix to metrics batching in the Sumo Logic exporter.
The performance improvement is very substantial, so we recommend upgrading to this version immediately after 0.49.0-sumo-0
.
- chore: update OT core to 0.50.0 #562
- fix: fix(sumologicexporter): batch metrics if source headers match #561
This release includes two breaking changes. One is an upstream change to the configuration syntax of several
log receivers, most notably the filelog
receiver. The other changes how the Sumo Logic exporter determines
metadata based on the attributes of a OpenTelemetry record. Please consult the upgrade guides linked below
for more details.
- chore: bump OT core to v0.49.0 #550 (upgrade guide)
- fix!(sumologicexporter): send resource attributes as fields for non-otlp, removing metadata_attributes #549 (upgrade guide)
- docs: clarify status of sumologicextension #553
- chore(deps): bump golang from 1.18 to 1.18.1 #546
- chore: bump Telegraf to v1.22.0-sumo-3 #557
- fix(cascadingfilterprocessor): prevent overriding metrics in cascading filter processor - add processor tag #539
- fix(sumologicexporter): treat resource attributes as fields for otlp #536
- refactor(sumologicexporter): use golang.org/x/exp/slices for sorting fields #519
- refactor(sumologicextension): use bytes slices and strings.Builder to decrease allocations #530
Welcome to the Sumo Logic Distribution for OpenTelemetry Collector!
With this release, we are officially out of beta status and in GA, as in General Availability. 🎉
This means the software is ready to be used by all customers (without signing up for beta program) and is commercially fully supported by Sumo Logic in production environments.
Starting with this release, we are using upstream OpenTelemetry Collector version numbers
as the base for the OT Distro version numbers.
This means that Sumo Logic Distribution for OpenTelemetry Collector v0.47.0-sumo-0
is based on v0.47.0
of the OpenTelemetry Collector core and contrib packages.
- fix(k8sprocessor): fix metadata dependencies by @astencel-sumo #513
- refactor(sumologicexporter): optimize fields stringification by @pmalek-sumo #517
- refactor(sumologicexporter): optimize compressor using sync.Pool by @pmalek-sumo #518
All changes: v0.0.58-beta.0...v0.47.0-sumo-0