Releases: signalfx/splunk-otel-collector
v0.83.0
🛑 Breaking changes 🛑
- (Splunk) Fluentd installation disabled by default for the
splunk-otel-collector
salt formula (#3448)- Specify the
install_fluentd: True
attribute in your pillar to enable installation
- Specify the
- (Splunk/Contrib) Removes the deprecated
receiver/prometheus_exec
receiver. Please see migration guide for further details. (#24740) (#3512) - (Contrib)
receiver/k8scluster
: Unify predefined and custom node metrics. (#24776)- Update metrics description and units to be consistent
- Remove predefined metrics definitions from metadata.yaml because they are controlled by
node_conditions_to_report
andallocatable_types_to_report
config options.
💡 Enhancements 💡
- (Splunk) Use
SPLUNK_LISTEN_INTERFACE
and associated installer option to configure the network interface used by the collector for default configurations (#3421)- Existing installations will rely on the default value of
SPLUNK_LISTEN_INTERFACE
set to0.0.0.0
. Users must addSPLUNK_LISTEN_INTERFACE
to their collector configuration to take advantage of this new option.
- Existing installations will rely on the default value of
- (Contrib)
receiver/collectdreceiver
: Migrate from opencensus to pdata, change collectd, test to match pdata format. (#20760) - (Contrib)
pkg/ottl
: Add support for using addition and subtraction with time and duration (#22009) - (Contrib)
transformprocessor
: Add extract_count_metric OTTL function to transform processor (#22853) - (Contrib)
transformprocessor
: Add extract_sum_metric OTTL function to transform processor (#22853) - (Contrib)
prometheusreceiver
: Don't drop histograms without buckets (#22070) - (Contrib)
pkg/ottl
: Add a new Function Getter to the OTTL package, to allow passing Converters as literal parameters. (#22961)
Currently OTTL provides no way to use any defined Converter within another Editor/Converter.
Although Converters can be passed as a parameter, they are always executed and the result is what is actually passed as the parameter.
This allows OTTL to pass Converters themselves as a parameter so they can be executed within the function. - (Contrib)
resourcedetectionprocessor
: GCP resource detection processor can automatically addgcp.gce.instance.hostname
andgcp.gce.instance.name
attributes. (#24598) splunkhecexporter
: Add heartbeat check while startup and new config param, heartbeat/startup (defaults to false). This is different than the healtcheck_startup, as the latter doesn't take token or index into account. (#24411)- (Contrib)
hostmetricsreceiver
: Report logical and physical number of CPUs as metric. (#22099)- Use the
system.cpu.logical.count::enabled
andsystem.cpu.physical.count::enabled
flags to enable them
- Use the
- (Contrib)
k8sclusterreceiver
: Allows disabling metrics and resource attributes (#24568) - (Contrib)
k8sclusterreceiver
: Reduce memory utilization (#24769) - (Contrib)
k8sattributes
: Added k8s.cluster.uid to k8sattributes processor to add cluster uid (#21974) - (Contrib)
resourcedetectionprocessor
: Collect heroku metadata available instead of exiting early. Log at debug level if metadata is missing to help troubleshooting. (#25059) - (Contrib)
hostmetricsreceiver
: Improved description of the system.cpu.utilization metrics. (#25115) - (Contrib)
cmd/mdatagen
: Avoid reusing the same ResourceBuilder instance for multiple ResourceMetrics (#24762) - (Contrib)
resourcedetectionprocessor
: Add detection of os.description to system detector (#24541) - (Contrib)
filelogreceiver
: Bump 'filelog.allowHeaderMetadataParsing' feature gate to beta (#18198) - (Contrib)
receiver/prometheusreceiver
: Add configreport-extra-scrape-metrics
to report additional prometheus scraping metrics (#21040)- Emits additional metrics - scrape_body_size_bytes, scrape_sample_limit, scrape_timeout_seconds. scrape_body_size_bytes metric can be used for checking failed scrapes due to body-size-limit.
- (Contrib)
receiver/sqlquery
: Set ObservedTimestamp on collected logs (#23776) - (Core)
extension
: Add optionalConfigWatcher
interface (#6596)- Extensions implementing this interface will be notified of the Collector's effective config.
- (Core)
otelcol
: Add optionalConfmapProvider
interface for Config Providers (#6596)- This allows providing the Collector's configuration as a marshaled confmap.Conf object from a ConfigProvider
- (Core)
service
: AddCollectorConf
field toservice.Settings
(#6596)
This field is intended to be used by the Collector to pass its effective configuration to the service.
🧰 Bug fixes 🧰
- (Contrib)
carbonreceiver
: Fix Carbon receiver obsrecv operations memory leak (#24275)- The carbonreceiver has a memory leak where it will repeatedly open new obsrecv operations but not close them afterwards. Those operations eventually create a burden. The fix is to make sure the receiver only creates an operation per interaction over TCP.
- (Contrib)
pkg/stanza
: Create a new decoder for each TCP/UDP connection to prevent concurrent write to buffer. (#24980) - (Contrib)
exporter/kafkaexporter
: Fixes a panic when SASL configuration is not present (#24797) - (Contrib)
receiver/k8sobjects
: Fix bug where duplicate data would be ingested for watch mode if the client connection got reset. (#24806) - (Contrib)
zipkinreceiver
: Respects zipkin's serialised status tags to be converted to span status (#14965) - (Contrib)
processor/resourcedetection
: Do not drop all system attributes ifhost.id
cannot be fetched. (#24669) - (Contrib)
signalfxexporter
: convert vmpage_io* translated metrics to pages (#25064) - (Contrib)
splunkhecreceiver
: aligns success resp body w/ splunk enterprise (#19219)- changes resp from plaintext "ok" to json {"text":"success", "code":0}
Docker Images:
quay.io/signalfx/splunk-otel-collector:0.83.0-amd64
(digest:sha256:c569d8684393b338880f44225f3750f49f95627ded5d0964ff53d9f9168ee094
)quay.io/signalfx/splunk-otel-collector:0.83.0-arm64
(digest:sha256:bdb9522d73105ffe5fcb6a6c62028d6784f66835da1ba7ca0f002549e77b875f
)quay.io/signalfx/splunk-otel-collector:0.83.0-ppc64le
(digest:sha256:f3ab74314c5a01f49046796574f0e2721828889b4d82ef13c6c13ff208488f6d
)quay.io/signalfx/splunk-otel-collector-windows:0.83.0
(digest:sha256:776b02dd725786b56df186eb9a28cbb66ab7dbb3e581d50f90570432b16cf40f
)quay.io/signalfx/splunk-otel-collector-windows:0.83.0-2022
(digest:sha256:16b0a1affbbff2f0f408bac1ddc2d5290bd0916541126c08f37747160a16136e
)
v0.82.0
🛑 Breaking changes 🛑
- (Splunk) Fluentd installation disabled by default for the Linux and Windows installer scripts (#3369)
- Specify the
--with-fluentd
(Linux) orwith_fluentd = 1
(Windows) option to enable installation
- Specify the
- (Splunk) Fluentd installation disabled by default for the Windows Chocolatey package (#3377)
- Specify the
/WITH_FLUENTD:true
parameter to enable installation
- Specify the
- (Contrib)
receiver/prometheus
: Remove unusedbuffer_period
andbuffer_count
configuration options (#24258) - (Contrib)
receiver/prometheus
: Add thetrim_metric_suffixes
configuration option to allow enable metric suffix trimming. (#21743, #8950)- When enabled, suffixes for unit and type are trimmed from metric names. If you previously enabled the
pkg.translator.prometheus.NormalizeName
feature gate, you will need to enable this option to have suffixes trimmed.
- When enabled, suffixes for unit and type are trimmed from metric names. If you previously enabled the
💡 Enhancements 💡
- (Core)
service
: Add support for exporting internal metrics to the console (#7641)- Internal collector metrics can now be exported to the console using the otel-go stdout exporter.
- (Core)
service
: Add support for interval and timeout configuration in periodic reader (#7641) - (Core)
service
: Add support for OTLP export for internal metrics (#7641)- Internal collector metrics can now be exported via OTLP using the otel-go otlpgrpc and otlphttp exporters.
- (Core)
scraperhelper
: Adding optional timeout field to scrapers (#7951) - (Core)
receiver/otlp
: Add http url paths per signal config options to otlpreceiver (#7511) - (Core)
exporter/otlphttp
: Add support for trailing slash in endpoint URL (#8084)- URLs like http://localhost:4318/ will now be treated as if they were http://localhost:4318
- (Contrib)
processor/resourcedetection
: Add an option to addhost.arch
resource attributio insystem
detector semantic convention (#22939) - (Contrib)
pkg/ottl
: Add new Len converter that computes the length of strings, slices, and maps. (#23847) - (Contrib)
pkg/ottl
: Improve error reporting for errors during statement parsing (#23840)- Failures are now printed for all statements within a context, and the statements are printed next to the errors.
- Erroneous values found during parsing are now quoted in error logs.
- (Contrib)
exporter/prometheusremotewrite
: Improve the latency and memory utilisation of the conversion from OpenTelemetry to Prometheus remote write (#24288) - (Contrib)
exporter/prometheusremotewrite
,exporter/prometheus
: Addadd_metric_suffixes
configuration option, which can disable the addition of type and unit suffixes. (#21743, #8950) - (Contrib)
exporter/prometheusremotewrite
: Downscale exponential histograms to fit prometheus native histograms if necessary (#17565) - (Contrib)
processor/routing
: Enables processor to extract metadata from client.Info (#20913) - (Contrib)
processor/transform
: Report all errors from parsing OTTL statements (#24245)
🧰 Bug fixes 🧰
- (Contrib)
receiver/prometheus
: Don't fail the whole scrape on invalid data (#24030) - (Contrib)
pkg/stanza
: Fix issue where nil body would be converted to string (#24017) - (Contrib)
pkg/stanza
: Fix issue where syslog input ignored enable_octet_counting setting (#24073) - (Contrib)
receiver/filelog
: Fix issue where files were deduplicated unnecessarily (#24235) - (Contrib)
processor/tailsamplingprocessor
: Fix data race when accessing spans during policies evaluation (#24283) - (Contrib)
zipkintranslator
: Stop dropping error tags from Zipkin spans. The old code removes all errors from those spans, rendering them useless if an actual error happened. In addition, no longer delete error tags if they contain useful information (#16530)
Docker Images:
quay.io/signalfx/splunk-otel-collector:0.82.0-amd64
(digest:sha256:f6a61ad31af0ede084d03488607e8696a90ca2a2d34e5021065678f6207323d2
)quay.io/signalfx/splunk-otel-collector:0.82.0-arm64
(digest:sha256:7daf18b018077dc34eb9c4e8cc7f97f82532581c9dfc0a301338a37403ae7a7e
)quay.io/signalfx/splunk-otel-collector:0.82.0-ppc64le
(digest:sha256:4e8d90c81924d58f7da34814ddabdbd444aad67804d61d76aa7e9ff44aca6bdb
)quay.io/signalfx/splunk-otel-collector-windows:0.82.0
(digest:sha256:eac94cf0adc4ce646323fc4a0123000453eb451178900c74912c376ed1b3822e
)quay.io/signalfx/splunk-otel-collector-windows:0.82.0-2022
(digest:sha256:e646618ed3fddd1413409b044c52d38d69dd3b83b6569eaffd4136ff1f8ea41e
)
v0.81.1
🧰 Bug fixes 🧰
- (Splunk) Discovery mode: Ensure all successful observers are used in resulting receiver creator instance (#3391)
- (Contrib)
processor/resourcedetection
: Fix panic when AKS detector is used. (#24549) - (Contrib)
processor/resourcedetection
: Avoid returning emptyhost.id
by thesystem
detector. (#24230) - (Contrib)
processor/resourcedetection
: Disablehost.id
by default on thesystem
detector. This restores the behavior prior to v0.72.0 when using thesystem
detector together with other detectors that sethost.id
. (#21233)
To re-enablehost.id
on thesystem
detector setsystem::resource_attributes::host.id::enabled
totrue
:resourcedetection: detectors: [system] system: resource_attributes: host.id: enabled: true
- (Contrib)
processor/resourcedetection
: Fix docker detector not setting any attributes. (#24280) - (Contrib)
processor/resourcedetection
: Fix Heroku config option for theservice.name
andservice.version
attributes. (#24355)
💡 Enhancements 💡
- (Splunk) Add support for basicauth extension. (#3413)
- (Splunk)
receiver/databricks
: Add retry/backoff on http 429s. (#3374) - (Contrib)
processor/resourcedetection
: The system detector now can optionally set thehost.arch
resource attribute. (#22939)
Docker Images:
quay.io/signalfx/splunk-otel-collector:0.81.1-amd64
(digest:sha256:ca5f09f700f4c4e3e9f0e9c34f7c5e7e17cd24d78df3e8fa77d1dba30466ffb0
)quay.io/signalfx/splunk-otel-collector:0.81.1-arm64
(digest:sha256:e44336e3b999365a30407d40abf2bd1564a9f041d0b8f541bcff878d201bb435
)quay.io/signalfx/splunk-otel-collector:0.81.1-ppc64le
(digest:sha256:f9ab5db1157bcc3dba16f998c43f01f936c56c0d893b3f747954a38e33307a03
)quay.io/signalfx/splunk-otel-collector-windows:0.81.1
(digest:sha256:85b97c43f975e2275cedbe059dc268fd133dbcc1979903a47469236dbed97ec3
)quay.io/signalfx/splunk-otel-collector-windows:0.81.1-2022
(digest:sha256:ef6aa397dd6bde83483cba96e598cd3da1f4d942a5d2f8210113a70f7b1c8fba
)
v0.81.0
v0.81.0
This Splunk OpenTelemetry Collector release includes changes from the opentelemetry-collector v0.81.0 and the opentelemetry-collector-contrib v0.81.0 releases where appropriate.
🛑 Breaking changes 🛑
- (Core)
service
: Remove 'service.connectors' featuregate (#7952) - (Contrib)
receiver/mongodbatlas
: Change the types ofConfig.PrivateKey
andConfig.Alerts.Secret
to beconfigopaque.String
(#17273)
🚩 Deprecations 🚩
mysqlreceiver
: setmysql.locked_connects
as optional in order to remove it in next release (#14138, #23274)
💡 Enhancements 💡
-
(Splunk) Package default discovery configuration in reference form in
/etc/otel/collector/config.d
(#3311) -
(Splunk) Add bundled collectd/nginx Smart Agent receiver discovery rules (#3321)
-
(Splunk) Support custom
--discovery-properties
file (#3334) -
(Splunk) Add
--discovery
to the Linux installer script (#3365) -
(Splunk) Starting from this version the logs pipeline is split in the default configuration in a way that profiling
data is always sent to Splunk Observability endpoint while other logs can be sent to another hec endpoint configured
withSPLUNK_HEC_URL
andSPLUNK_HEC_TOKEN
environment variables (#3330) -
(Core)
HTTPServerSettings
: Add zstd support to HTTPServerSettings (#7927)
This adds ability to decompress zstd-compressed HTTP requests to| all receivers that use HTTPServerSettings. -
(Core)
confighttp
: Addresponse_headers
configuration option on HTTPServerSettings. It allows for additional headers to be attached to each HTTP response sent to the client (#7328) -
(Core)
otlpreceiver, otlphttpexporter, otlpexporter, configgrpc
: Upgrade github.com/mostynb/go-grpc-compression and switch to nonclobbering imports (#7920)
consumers of this library should not have their grpc codecs overridden -
(Core)
otlphttpexporter
: Treat partial success responses as errors (#6686) -
(Contrib)
sqlqueryreceiver
: Add support of Start and End Timestamp Column in Metric Configuration. (#18925, #14146) -
(Contrib)
filelogreceiver
: Add support for tracking the current file in filelogreceiver (#22998) -
(Contrib)
pkg/ottl
: Adds newTime
converter to convert a string to a Golang time struct based on a supplied format (#22007) -
(Contrib)
hostmetricsreceiver
: Add new Windows-exclusive process.handles metric. (#21379) -
(Contrib)
resourcedetectionprocessor
: Adds a way to configure the list of added resource attributes by the processor (#21482)
Users can now configure what resource attributes are gathered by specific detectors.
Example configuration:resourcedetection: detectors: [system, ec2] system: resource_attributes: host.name: enabled: true host.id: enabled: false ec2: resource_attributes: host.name: enabled: false host.id: enabled: true
For example, this config makes
host.name
being set bysystem
detector, andhost.id
byec2
detector.
Moreover:- Existing behavior remains unaffected as all attributes are currently enabled by default.
- The default attributes 'enabled' values are defined in
metadata.yaml
. - Future releases will introduce changes to resource_attributes
enabled
values. - Users can tailor resource detection process to their needs and environment.
-
(Contrib)
k8sclusterreceiver
: Switch k8s.pod and k8s.container metrics to use pdata. (#23441)
🧰 Bug fixes 🧰
- (Contrib)
k8sclusterreceiver
: Add back all other vendor-specific node conditions, and report them even if missing, as well as all allocatable node metrics if present, to the list of Kubernetes node metrics available, which went missing during the pdata translation (#23839) - (Contrib)
k8sclusterreceiver
: Add explicitlyk8s.node.allocatable_pods
to the list of Kubernetes node metrics available, which went missing during the pdata translation (#23839) - (Contrib)
receiver/kafkametricsreceiver
: Updates certain metrics in kafkametricsreceiver to function as non-monotonic sums. (#4327)
Update the metrics type in KafkaMetricsReceiver from "gauge" to "nonmonotonic sum". Changes metrics are, kafka.brokers, kafka.topic.partitions, kafka.partition.replicas, kafka.partition.replicas_in_sync, kafka.consumer_group.members. - (Contrib)
windowseventlogreceiver
: Fix buffer overflow when ingesting large raw Events (#23677) - (Contrib)
pkg/stanza
: adding octet counting event breaking for syslog parser (#23577)
Docker Images:
quay.io/signalfx/splunk-otel-collector:0.81.0-amd64
(digest:sha256:17e4f3b3152492f7d802a3280ef68f6f37b5634e54f6b7e01685c5548f2e8d14
)quay.io/signalfx/splunk-otel-collector:0.81.0-arm64
(digest:sha256:39f70c23b7b676a2037f4fba624096421057fc595f32bf13735ac8413eb0b14a
)quay.io/signalfx/splunk-otel-collector:0.81.0-ppc64le
(digest:sha256:fcd7edd1fe23c88e056c6d747a730af8c1d4c5b0fab67951db9937df6b87365a
)quay.io/signalfx/splunk-otel-collector-windows:0.81.0
(digest:sha256:68049a383be0b91ddffb03cbeab672786ae7851a26d995bce2af3287297b9a4e
)quay.io/signalfx/splunk-otel-collector-windows:0.81.0-2022
(digest:sha256:2889298d605e83463f163117b926336f185fcffb0a06fd928c243f3e30f79704
)
v0.80.0
This Splunk OpenTelemetry Collector release includes changes from the opentelemetry-collector v0.80.0 and the opentelemetry-collector-contrib v0.80.0 releases where appropriate.
❗ Known Issues ❗
- (Contrib)
k8sclusterreceiver
: Missing node metrics for k8s.node.condition_out_of_disk, k8s.node.allocatable_pods and k8s.node.allocatable_hugepages-* (#23839)[https://github.com/open-telemetry/opentelemetry-collector-contrib/issues/23839]
🛑 Breaking changes 🛑
- (Contrib)
redisreceiver
: Updates metric unit from no unit to Bytes. (#23454)
Affected metrics can be found below.- redis.clients.max_input_buffer
- redis.clients.max_output_buffer
- redis.replication.backlog_first_byte_offset
- redis.replication.offset
- (Splunk) Embed observer configuration in
observer.discovery.yaml
config
mapping. This is only a breaking change if you have written your own custom discovery mode observer configuration (#3277).
💡 Enhancements 💡
- (Contrib)
resourcedetectionprocessor
: use opentelemetry-go library forhost.id
detection in thesystem
detector (#18533) - (Contrib)
k8sattributesprocessor
: Store only necessary ReplicaSet and Pod data (#23226) - (Contrib)
k8sclusterreceiver
: Do not store unused data in the k8s API cache to reduce RAM usage (#23433) - (Contrib)
pkg/ottl
: Add newIsString
andIsMap
functions to facilitate type checking. (#22750)
Especially useful for checking log body type before parsing. - (Contrib)
pkg/ottl
: AddsStandardFuncs
andStandardConverters
to facilitate function map generation. (#23190)
This change means that new functions added to ottlfuncs get automatically added to Cotnrib components that use OTTL - (Contrib)
pkg/ottl
: Change replacement functions to accept a path expression as a replacement (#22787)
The following replacement functions now accept a path expression as a replacement:- replace_match
- replace_pattern
- replace_all_matches
- replace_all_patterns
- (Contrib)
sapmexporter
: sapm exporter now supportscompression
config option to specify either gzip or zstd compression to use. (#23257) - (Contrib)
sapmreceiver
: sapm receiver now accepts requests in compressed with zstd. (#23257) - (Contrib)
exporter/signalfx
: Do not drop container.cpu.time metric in the default translations so it can be enabled in the include_metrics config. (#23403) - (Contrib)
sqlqueryreceiver
: Add support for logs (#20284) - (Contrib)
k8sclusterreceiver
: Switch k8s.deployment metrics to use pdata. (#23416) - (Contrib)
k8sclusterreceiver
: Switch k8s.hpa metrics to use pdata. (#18250) - (Contrib)
k8sclusterreceiver
: Switch k8s.namespace metrics to use pdata. (#23437) - (Contrib)
k8sclusterreceiver
: Switch k8s.node metrics to use pdata. (#23438) - (Contrib)
k8sclusterreceiver
: Switch k8s.rq metrics to use pdata. (#23419) - (Contrib)
k8sclusterreceiver
: Switch k8s.ss metrics to use pdata. (#23420) - (Contrib)
carbonreceiver
: Remove use of opencensus model in carbonreceiver (#20759) - (Core)
service
: Added dry run flag to validate config file without running collector. (#4671) - (Core)
configtls
: Allow TLS Settings to be provided in memory in addition to filepath. (#7313) - (Core)
connector
: Updates the way connector nodes are built to always pass a fanoutconsumer to their factory functions. (#7672, #7673) - (Core)
otlp
: update otlp protos to v0.20.0 (#7839) - (Core)
config
: Split config into more granular modules (#7895) - (Core)
connector
: Split connector into its own module (#7895) - (Core)
extension
: split extension andextension/auth
into its own module (#7306, #7054) - (Core)
processor
: Split the processor into its own go module (#7307) - (Core)
confighttp
: Avoid re-creating the compressors for every request. (#7859) - (Core)
otlpexporter
: Treat partial success responses as errors (#6686) - (Core)
service/pipelines
: Add pipelines.Config to remove duplicate of the pipelines configuration (#7854)
🧰 Bug fixes 🧰
- (Contrib)
otel-collector
: Fix cri-o log format time layout (#23027) - (Contrib)
receiver/hostmetricsreceiver
: Fix not sendingprocess.cpu.utilization
whenprocess.cpu.time
is disabled. (#23450) - (Contrib)
receiver/kafkametricsreceiver
: Updates certain metrics in kafkametricsreceiver to function as non-monotonic sums. (#4327)
Update the metric type in KafkaMetricsReceiver from "gauge" to "nonmonotonic sum". - (Contrib)
receiver/hostmetrics
: Fix issue where receiver fails to read parent-process information for some processes on Windows (#14679) - (Contrib)
k8sclusterreceiver
: Fix empty k8s.namespace.name attribute in k8s.namespace.phase metric (#23452) - (Contrib)
splunkhecexporter
: Apply multi-metric merge at the level of the whole batch rather than within events emitted for one metric. (#23365)
Docker Images:
quay.io/signalfx/splunk-otel-collector:0.80.0-amd64
(digest:sha256:88a52b3fcbec7fd81c2bfdbb515dd04c153043c4fd693f616825bbe037b8654f
)quay.io/signalfx/splunk-otel-collector:0.80.0-arm64
(digest:sha256:c91ca8c7fa77594c59fd88f1accf2b319df212a296d409ac0d2b175b49219616
)quay.io/signalfx/splunk-otel-collector:0.80.0-ppc64le
(digest:sha256:e92d5f2d9b5d15b44319b16cdc710f5c25c07b6ca78af643a957d40fbb83023d
)quay.io/signalfx/splunk-otel-collector-windows:0.80.0
(digest:sha256:3852d004072762fcc85df97567c20e3a102a934f01489e7c7b137b30f61e6adc
)quay.io/signalfx/splunk-otel-collector-windows:0.80.0-2022
(digest:sha256:73aa972e350e1c128c1a1c76502302fa0ed82036a51960e49842fa0e50fd25b0
)
v0.79.1
🛑 Breaking changes 🛑
- (Contrib) Set
pkg.translator.prometheus.NormalizeName
feature gate back to Alpha state since it was enabled
prematurely. Metrics coming from Prometheus receiver will not be normalized by default, specifically_total
suffix
will not be removed from metric names. To maintain the current behavior (drop the_total
suffix), you can enable
the feature gate using the--feature-gates=pkg.translator.prometheus.NormalizeName
command argument. However, note
that the translation in the prometheus receiver is a subject to possible future changes.
(#23229)
💡 Enhancements 💡
- (Splunk) Add spanmetric and count connectors (#3300)
- (Splunk) Upgrade builds to use golang 1.20.5 (#3299)
- (Splunk)
receiver/smartagent
: AddscrapeFailureLogLevel
config field toprometheus-exporter
and its sourcing monitors to determine the log level for reported scrape failures (#3260)
🧰 Bug fixes 🧰
- (Splunk) Correct imported Contrib
pkg/translator/prometheus
dependency forpkg.translator.prometheus.NormalizeName
Alpha state (#3303)
Docker Images:
quay.io/signalfx/splunk-otel-collector:0.79.1-amd64
(digest:sha256:db63c17bde987b239f1274e7ff5cea6e7cf9c9874987c8ccf9c8659ad74a7648
)quay.io/signalfx/splunk-otel-collector:0.79.1-arm64
(digest:sha256:07cd2ad55c8a90a58ec8b0b18ca1311d34a484a13a987df2f31b6c897f567943
)quay.io/signalfx/splunk-otel-collector:0.79.1-ppc64le
(digest:sha256:3b951e966127c0b11ce6d404b3d4472cf29616271f938b74a41a2ee37d392b62
)quay.io/signalfx/splunk-otel-collector-windows:0.79.1
(digest:sha256:92f52d861bc8dca60aa450206ada5157f73ef67377c5bf5fce165a35b66166ee
)quay.io/signalfx/splunk-otel-collector-windows:0.79.1-2022
(digest:sha256:a199354328e4d666ba2ddc9290f6e3e197348a91210dfa252c2141841da6f1a4
)
v0.79.0
This Splunk OpenTelemetry Collector release includes changes from the opentelemetry-collector v0.79.0 and the opentelemetry-collector-contrib v0.79.0 releases where appropriate.
🛑 Breaking changes 🛑
- (Contrib) Set
pkg.translator.prometheus.NormalizeName
feature gate back to Alpha state since it was enabled
prematurely. Metrics coming from Prometheus receiver will not be normalized by default, specifically_total
suffix
will not be removed from metric names. To maintain the current behavior (drop the_total
suffix), you can enable
the feature gate using the--feature-gates=pkg.translator.prometheus.NormalizeName
command argument. However, note
that the translation in the prometheus receiver is a subject to possible future changes.
(#23229) - (Contrib)
attributesprocessor
: Enable SHA-256 as hashing algorithm by default for attributesprocessor hashing action (#4759) - (Contrib)
windowseventlogreceiver
: Emit raw Windows events as strings instead of byte arrays (#22704) - (Contrib)
pkg/ottl
: RemovesStandardTypeGetter
in favor ofStandardStringGetter
,StandardIntGetter
,StandardFloatGetter
, andStandardPMapGetter
, which handle converting pcommon.Values of the proper type. (#22763)
This is only a breaking change for users using OTTL in custom components. For all Contrib components this is an enhancement. - (Contrib)
postgresqlreceiver
: Remove resource attribute feature gates (#22479)
💡 Enhancements 💡
- (Splunk)
smartagentreceiver
: Addkubernetes-cluster
config option to sync node labels as properties on thekubernetes_node
dimension (#3267) - (Splunk) Discovery mode: Support
splunk.discovery
mapping in properties.discovery.yaml (#3238) - (Splunk) Upgrade to the latest Java agent version v1.25.0 (#3272)
- (Contrib)
jmxreceiver
: Add the JMX metrics gatherer version 1.26.0-alpha to the supported jars hash list (#22042) - (Contrib)
receivers
: Addinginitial_delay
to receivers to control when scraping interval starts (#23030)
The updated receivers are:oracledb
postgresql
sqlquery
windowsperfcounters
- (Contrib)
oracledbreceiver
: Add a simpler alternative configuration option (#22087) - (Contrib)
pkg/ottl
: Addbody.string
accessor to ottllog (#22786) - (Contrib)
pkg/ottl
: Allow indexing map and slice log bodies (#17396, #22068) - (Contrib)
pkg/ottl
: Add hash converters/functions for OTTL (#22725) - (Contrib)
splunkhecreceiver
: Support different strategies for splitting payloads when receiving a request with the Splunk HEC receiver (#22788) - (Contrib)
exporter/splunk_hec
: Apply compression to Splunk HEC payload unconditionally if it's enabled in the config (#22969, #22018)
The compression used to be enabled only if the payload size was greater than 1.5KB which significantly
complicated the logic and made it hard to test. This change makes the compression unconditionally applied to
the payload if it's enabled in the config. The benchmarking shows improvements in the throughput and CPU usage for
large payloads and expected degradation for small payloads which is acceptable given that it's not a common case. - (Core)
otelcol
: Add connectors to output of thecomponents
command (#7809) - (Core)
scraperhelper
: Will start calling scrapers on component start. (#7635)
The change allows scrapes to perform their initial scrape on component start
and provide an initial delay. This means that scrapes will be delayed byinitial_delay
before first scrape and then run oncollection_interval
for each consecutive interval. - (Core)
batchprocessor
: Change multiBatcher to use sync.Map, avoid global lock on fast path (#7714) - (Core, Contrib, Splunk) Third-party dependency updates.
🧰 Bug fixes 🧰
- (Splunk)
smartagentreceiver
add missingmonitorID
logger field tohttp
monitor (#3261) - (Contrib)
jmxreceiver
: Fixed the issue where the JMX receiver's subprocess wasn't canceled upon shutdown, resulting in a rogue java process. (#23051) - (Contrib)
internal/filter/filterlog
: fix filtering non-string body by bodies property (#22736)
Affectsfilterprocessor
andattributesprocessor
. - (Contrib)
prometheusreceiver
: Remove sd_file validations from config.go in Prometheus Receiver to avoid failing Collector with error as this behaviour is incompatible with the Prometheus. (#21509) - (Contrib)
fileexporter
: Fixes broken lines when rotation is set. (#22747) - (Contrib)
exporter/splunk_hec
: Make sure themax_event_size
option is used to drop events larger thanmax_event_size
instead of using it for batch size. (#18066) - (Contrib)
postgresqlreceiver
: Fix race condition when capturing errors from multiple requests simultaneously (#23026) - (Contrib)
prometheusreceiver
: The prometheus receiver now sets a full, versioned user agent. (#21910) - (Contrib)
splunkhecreceiver
: Fix reusing the same splunkhecreiver between logs and metrics (#22848) - (Core)
connectors
: When replicating data to connectors, consider whether the next pipeline will mutate data (#7776)
Docker Images:
quay.io/signalfx/splunk-otel-collector:0.79.0-amd64
(digest:sha256:bac0f324e18e11f0c4df8a6c0b551a03414efa6d5a34e54fe9134e234348066d
)quay.io/signalfx/splunk-otel-collector:0.79.0-arm64
(digest:sha256:c03f9ee5cf5d15dd19c8f77a2411df088296ae852eb10c532f5e3f8639f4c36b
)quay.io/signalfx/splunk-otel-collector:0.79.0-ppc64le
(digest:sha256:b88dba6c70f4b64b8293652868f2b3ec67ca291ae652be7f2f65c1555a5ebf8f
)quay.io/signalfx/splunk-otel-collector-windows:0.79.0
(digest:sha256:47622257d72c1f0dbfeb05eb65eb7ea37501ca324767281909c52fff99f8332f
)quay.io/signalfx/splunk-otel-collector-windows:0.79.0-2022
(digest:sha256:a3499adc6adacfd3dffc1a3293c507dc60d4eccb310d3d73cb5937397530bba7
)
v0.78.1
🧰 Bug fixes 🧰
- (Contrib)
receiver/filelog
Account for empty files (#22815)
💡 Enhancements 💡
- (Core, Contrib, Splunk) Third-party dependency updates.
Docker Images:
quay.io/signalfx/splunk-otel-collector:0.78.1-amd64
(digest:sha256:e0e2961e2bbdd95251f77b1c5cd553a24e1034d1394bec425b1dfff53914c258
)quay.io/signalfx/splunk-otel-collector:0.78.1-arm64
(digest:sha256:a786224794c436cf73f8c5115e4215e099cb8b74d29b59f7543110dba66c9fd3
)quay.io/signalfx/splunk-otel-collector:0.78.1-ppc64le
(digest:sha256:fd03611f605cb1340b0b51884368101b87abaf705ca017e6b7393ac586ac792e
)quay.io/signalfx/splunk-otel-collector-windows:0.78.1
(digest:sha256:83d8a516fb438424e590035d24217d47ec73fd702eb38ef81083c2416c9d40d9
)quay.io/signalfx/splunk-otel-collector-windows:0.78.1-2022
(digest:sha256:ad188ffd543394248b182e24bde68ee6c570b733846dc71bdfb36fcf553a98d5
)
v0.78.0
This Splunk OpenTelemetry Collector release includes changes from the opentelemetry-collector v0.78.2 and the opentelemetry-collector-contrib v0.78.0 releases where appropriate.
❗ Known Issues ❗
- (Contrib)
receiver/filelog
: Empty files will lead to frequentFailed to seek
error messages (#22815)
🛑 Breaking changes 🛑
- (Contrib)
receiver/mongodbatlas
: Update emitted Scope name to "otelcol/mongodbatlasreceiver" (#21382) - (Contrib)
receivers
: Updating receivers that run intervals to use standard interval by default (#22138) - (Contrib)
pkg/ottl
: Updates theInt
converter to use a newIntLikeGetter
which will error if the value cannot be converted to an int. (#22059)
Affected components: transformprocessor, filterprocessor, routingprocessor, tailsamplingprocessor, countconnector. It is HIGHLY recommended to use each component's error_mode configuration option to handle errors returned byInt
.
💡 Enhancements 💡
- (Splunk) Add
enabled
field support to*.discovery.yaml
config (#3207) - (Contrib)
jmxreceiver
: Add the JMX metrics gatherer version 1.26.0-alpha to the supported jars hash list (#22042) - (Contrib)
receivercreator
: add logs and traces support to receivercreator (#19205, #19206) - (Contrib)
pkg/ottl
: Add Log function (#18076) - (Contrib)
oracledbreceiver
: Adds support forconsistent gets
anddb block gets
metrics. Disabled by default. (#21215) - (Contrib)
pkg/batchperresourceattr
: Mark as not mutating as it does defensive copying. (#21885) - (Contrib)
receiver/kafkareceiver
: Support configuration of initial offset strategy to allow consuming form latest or earliest offset (#14976) - (Contrib)
internal/filter
: AddLog
,UUID
, andParseJSON
converters to filterottl standard functions (#21970) - (Contrib)
pkg/stanza
: aggregate the latter part of the split-log due to triggering the size limit (#21241) - (Contrib)
cmd/mdatagen
: Allow setting resource_attributes without introducing the metrics builder. (#21516) - (Contrib)
receiver/mongodbatlasreceiver
: Allow collection of MongoDB Atlas Access Logs as a new feature of the MongoDBAtlas receiver. (#21182) - (Contrib)
pkg/ottl
: AddFloatLikeGetter
andFloatGetter
to facilitate float retrival for functions. (#21896) - (Contrib)
pkg/ottl
: Add access to get and set span kind using a string (#21773) - (Contrib)
processor/routingprocessor
: Instrument the routing processor with non-routed spans/metricpoints/logrecords counters (OTel SDK). (#21476) - (Contrib)
exporter/splunkhec
: Improve performance and reduce memory consumption. (#22018) - (Contrib)
processor/transform
: Add access to the Log function (#22014) - (Core)
batchprocessor
: Add support for batching by metadata keys. (#4544) - (Core)
service
: Add feature gatetelemetry.useOtelWithSDKConfigurationForInternalTelemetry
that will add support for configuring the export of internal telemetry to additional destinations in future releases (#7678, #7641) - (Core)
forwardconnector
: Promote to beta (#7579) - (Core)
featuregate
: Promotefeaturegate
to the stable module-set (#7693) - (Core, Contrib, Splunk) Third-party dependency updates.
🧰 Bug fixes 🧰
- (Splunk) Evaluate
--set
properties as yaml values (#3175) - (Splunk) Evaluate config converter updates to
--dry-run
content (#3176) - (Splunk) Support config provider uris in
--config
option values (#3182) - (Splunk)
receiver/smartagent
: Don't attempt to expand observerendpoint
fields if host and port are unsupported (#3187) - (Splunk) Replace deprecated
loglevel: debug
logging exporter field withverbosity: detailed
in default configs (#3189) - (Contrib)
statsdreceiver
: Handles StatsD server not running when shutting down to avoid NPE (#22004) - (Contrib)
pkg/ottl
: Fix the factory name for the limit function (#21920) - (Contrib)
processor/filter
: Fix issue where the OTTL functionHasAttributeKeyOnDatapoint
was not usable. (#22057) - (Contrib)
pkg/ottl
: Allow using capture groups inreplace_all_patterns
when replacing map keys (#22094) - (Contrib)
exporter/splunkhec
: Fix a bug causing incorrect data in the partial error returned by the exporter (#21720) - (Core)
batchprocessor
: Fix return error for batch processor when consuming Metrics and Logs (#7711) - (Core)
batchprocessor
: Fix start/stop logic for batch processor (#7708) - (Core)
featuregate
: Fix issue whereStageDeprecated
was not usable (#7586) - (Core)
exporterhelper
: Fix persistent storage behaviour with no available space on device (#7198)
Docker Images:
quay.io/signalfx/splunk-otel-collector:0.78.0-amd64
(digest:sha256:d660a3c2e4b51e96053845f90c3f746b9c1f8f7c5dc53f55bf77ab3f15c89a20
)quay.io/signalfx/splunk-otel-collector:0.78.0-arm64
(digest:sha256:d1778fc5d85a8b27387c4b51f2d72e89e063b35e682e809d1091d51c3a8b1220
)quay.io/signalfx/splunk-otel-collector:0.78.0-ppc64le
(digest:sha256:d02a8acdafbef157d1435c8c75bb05440d6e8d733183224866a80a579d15f31f
)quay.io/signalfx/splunk-otel-collector-windows:0.78.0
(digest:sha256:18f0df731972b2a31b5029e3c4a0a7fde226dafa07836306433b516bc8c284e7
)quay.io/signalfx/splunk-otel-collector-windows:0.78.0-2022
(digest:sha256:3c9cbc2b18fed5fcf33f1b604e75754265875920e90c89df471e16e3eba97521
)
v0.77.0
This Splunk OpenTelemetry Collector release includes changes from the opentelemetry-collector v0.77.0 and the opentelemetry-collector-contrib v0.77.0 releases where appropriate.
💡 Enhancements 💡
connector/forward
- Add support for the forward connector (#3100)receiver/signalfxgatewayprometheusremotewritereceiver
- Add new receiver that aims to be an otel-native version of
the SignalFx Prometheus remote write
gateway (#3064)signalfx-agent
: Relocate to be internal to the collector (#3052)
Docker Images:
quay.io/signalfx/splunk-otel-collector:0.77.0-amd64
(digest:sha256:e0574f011793799b9133b1523a8fd0d84770841aacd01242ba9eb860897d0a6a
)quay.io/signalfx/splunk-otel-collector:0.77.0-arm64
(digest:sha256:598e3ad9d3c73ff26d572c0f28d4fb6abd5abaebad7283d4f83728f7dd96a6ae
)quay.io/signalfx/splunk-otel-collector:0.77.0-ppc64le
(digest:sha256:5d8491eb0261c01cd142f0883ae8faa654b03a5ad1233da3fb7212562c71df77
)quay.io/signalfx/splunk-otel-collector-windows:0.77.0
(digest:sha256:2e2cb6c6dbea384604c390b631816a3cf98229f6c0186e93b99d7538b6414d6f
)quay.io/signalfx/splunk-otel-collector-windows:0.77.0-2022
(digest:sha256:7de4822f26e3b0085b055368b8ca99eb56664f7358e11018adf5e8b2c0c9b3d4
)