Skip to content

Releases: signalfx/splunk-otel-collector

v0.98.0

16 Apr 20:50
v0.98.0
7393bf4
Compare
Choose a tag to compare

This Splunk OpenTelemetry Collector release includes changes from the opentelemetry-collector v0.98.0 and the opentelemetry-collector-contrib v0.98.0 releases where appropriate.

🛑 Breaking changes 🛑

  • (Splunk) Remove the bash, curl, nc, and tar command-line utilities from the collector packages/images and smart agent bundle (#4646)
  • (Splunk) receiver/discovery: Update metrics and logs evaluation statements schema:
    • Remove severity_text field from log evaluation statements (#4583)
    • Remove first_only field from match struct. Events are always emitted only once for first matching metric or log statement (#4593)
    • Combine matching conditions with different statuses in one list (#4588)
    • Apply entity events schema to the logs emitted by the receiver (#4638)
    • Emit only one log record per matched endpoint (#4586)
  • (Core) service: emit internal collector metrics with _ instead of / with OTLP export (#9774)
  • (Contrib) oracledbreceiver: Fix incorrect values being set for oracledb.tablespace_size.limit and oracledb.tablespace_size.usage (#31451)
    • Please grant the DBA_TABLESPACE_USAGE_METRICS permission to the user connecting to the Oracle DB instance to ensure all enabled metrics are properly ingested.
  • (Contrib) pkg/stanza: Revert recombine operator's 'overwrite_with' default value. (#30783)
  • (Contrib) processor/attributes, processor/resource: Remove stable coreinternal.attraction.hash.sha256 feature gate. (#31997)

🚩 Deprecations 🚩

  • (Contrib) postgresqlreceiver: Minimal supported PostgreSQL version will be updated from 9.6 to 12.0 in a future release. (#30923)
    Aligning on the supported versions as can be seen in the PostgreSQL releases section

🚀 New components 🚀

  • (Splunk) Add SQL Server receiver (#4649)

💡 Enhancements 💡

  • (Splunk) Automatically set splunk_otlp_histograms: true for collector telemetry exported via signalfx metrics exporter (#4655)
  • (Splunk) Windows installer now removes the unused configuration files from the installation directory (#4645)
  • (Core) otlpexporter: Checks for port in the config validation for the otlpexporter (#9505)
  • (Core) service: Validate pipeline type against component types (#8007)
  • (Contrib) ottl: Add new Unix function to convert from epoch timestamp to time.Time (#27868)
  • (Contrib) filelogreceiver: When reading a file on filelogreceiver not on windows, if include_file_owner_name is true, it will add the file owner name as the attribute log.file.owner.name and if include_file_owner_group_name is true, it will add the file owner group name as the attribute log.file.owner.group.name. (#30775)
  • (Contrib) - prometheusreceiver: Allows receiving prometheus native histograms (#26555)
    • Native histograms are compatible with OTEL exponential histograms.
    • The feature can be enabled via the feature gate receiver.prometheusreceiver.EnableNativeHistograms.
      Run the collector with the command line option --feature-gates=receiver.prometheusreceiver.EnableNativeHistograms.
    • Currently the feature also requires that targets are scraped via the ProtoBuf format.
      To start scraping native histograms, set
      config.global.scrape_protocols to [ PrometheusProto, OpenMetricsText1.0.0, OpenMetricsText0.0.1, PrometheusText0.0.4 ] in the
      receiver configuration. This requirement will be lifted once Prometheus can scrape native histograms over text formats.
    • For more up to date information see the README.md file of the receiver at
      https://github.com/open-telemetry/opentelemetry-collector-contrib/blob/main/receiver/prometheusreceiver/README.md#prometheus-native-histograms.
  • (Contrib) spanmetricsconnector: Change default value of metrics_flush_interval from 15s to 60s (#31776)
  • (Contrib) pkg/ottl: Adding a string converter into pkg/ottl (#27867)
  • (Contrib) loadbalancingexporter: Support the timeout period of k8s resolver list watch can be configured. (#31757)

🧰 Bug fixes 🧰

  • (Splunk) discovery: Don't use component.MustNewIDWithName (#4565)
  • (Core) configtls: Fix issue where IncludeSystemCACertsPool was not consistently used between ServerConfig and ClientConfig. (#9835)
  • (Core) component: Fix issue where the components command wasn't properly printing the component type. (#9856)
  • (Core) otelcol: Fix issue where the validate command wasn't properly printing valid component type. (#9866)
  • (Core) receiver/otlp: Fix bug where the otlp receiver did not properly respond with a retryable error code when possible for http (#9357)
  • (Contrib) filelogreceiver: Fix missing scope name and group logs based on scope (#23387)
  • (Contrib) jmxreceiver: Fix memory leak during component shutdown (#32289)
  • (Contrib) k8sobjectsreceiver: Fix memory leak caused by the pull mode's interval ticker (#31919)
  • (Contrib) kafkareceiver: fix kafka receiver panic on shutdown (#31926)
  • (Contrib) prometheusreceiver: Fix a bug where a new prometheus receiver with the same name cannot be created after the previous receiver is Shutdown (#32123)
  • (Contrib) resourcedetectionprocessor: Only attempt to detect Kubernetes node resource attributes when they're enabled. (#31941)
  • (Contrib) syslogreceiver: Fix issue where static resource and attributes were ignored (#31849)

Docker Images:

  • quay.io/signalfx/splunk-otel-collector:0.98.0-amd64 (digest: sha256:6255d8b1ebb3cd95577d192f43e5ac08c029fd065eb720e54854ded7967e21b6)
  • quay.io/signalfx/splunk-otel-collector:0.98.0-arm64 (digest: sha256:1370cefd0fd33f0e691a152887b511c716b0044189b85743bfe474593f6b5a86)
  • quay.io/signalfx/splunk-otel-collector:0.98.0-ppc64le (digest: sha256:ab3bf871fda3b21f770539882c9147e8bf1329d2a20ddb52f546fa0e9e223edf)
  • quay.io/signalfx/splunk-otel-collector-windows:0.98.0 (digest: sha256:d26e509ecf5e748c00c3381f171a7c6aa3e9a6b36ce401f7bd72c8269989ee78)
  • quay.io/signalfx/splunk-otel-collector-windows:0.98.0-2019 (digest: sha256:578bc9ebf571bbd011e6baf9977d844868b09219fe8e8c46e2fdf45af60d882b)
  • quay.io/signalfx/splunk-otel-collector-windows:0.98.0-2022 (digest: sha256:00ff87e429aaea23e17f9769faca0b99ee886293bb3b3d342428c2470531c676)

v0.97.0

28 Mar 03:42
v0.97.0
5119087
Compare
Choose a tag to compare

This Splunk OpenTelemetry Collector release includes changes from the opentelemetry-collector v0.97.0 and the opentelemetry-collector-contrib v0.97.0 releases where appropriate.

⚠️ Upgrade guidelines regarding the collector memory ballast. ⚠️

reproduced from repository README

memory_ballast is no longer effective. The garbage collection is now controlled by the soft memory limit set to 90% of total memory (SPLUNK_MEMORY_TOTAL_MIB env var) by default.

If you haven't customized the memory_ballast, just remove it from the configuration.

If you have customized it via SPLUNK_BALLAST_SIZE_MIB (or extensions::memory_ballast::size_mib config), you should remove the memory_ballast extension and use the GOMEMLIMIT environment variable to set a custom soft memory limit:

To increase frequency of garbage collections: set GOMEMLIMIT to a higher value than the default 90% of total memory.
To decrease frequency of garbage collections: set GOMEMLIMIT to a lower value than the default 90% of total memory.

🚀 New components 🚀

  • (Splunk) Add AWS container insights receiver (#4125)
  • (Splunk) Add AWS ECS container metrics receiver (#4125)
  • (Splunk) Add Apache metrics receiver (#4505)

💡 Enhancements 💡

  • (Splunk) memory_ballast has been removed. If GOMEMLIMIT env var is not set, then 90% of the total available memory limit is set by default. (#4404)
    Please review the upgrade guidelines in the README.
  • (Splunk) Support Windows offline installations (#4471)
  • (Core) configtls: Validates TLS min_version and max_version (#9475)
    Introduces Validate() method in TLSSetting.
  • (Contrib) exporter/loadbalancingexporter: Adding AWS Cloud Map for service discovery of Collectors backend. (#27241)
  • (Contrib) awss3exporter: add compression option to enable file compression on S3 (#27872)
    Add compression option to compress files using compress/gzip library before uploading to S3.
  • (Contrib) awss3exporter: Add support for encoding extension to awss3exporter (#30554)
  • (Contrib) deltatocumulativeprocessor: introduce configurable stream limit (#31488)
    Adds max_streams option that allows to set upper bound (default = unlimited)
    to the number of tracked streams. Any additional streams exceeding the limit
    are dropped.
  • (Contrib) fileexporter: Adopt the encoding extension with the file exporter. (#31774)
  • (Contrib) pkg/ottl: Add ParseXML function for parsing XML from a target string. (#31133)
  • (Contrib) fileexporter: Added the option to write telemetry data into multiple files, where the file path is based on a resource attribute. (#24654)
  • (Contrib) fileexporter: File write mode is configurable now (truncate or append) (#31364)
  • (Contrib) k8sclusterreceiver: add optional status_last_terminated_reason resource attribute (#31282)
  • (Contrib) prometheusreceiver: Use confighttp for target allocator client (#31449)
  • (Contrib) spanmetricsconnector: Add metrics_expiration option to enable expiration of metrics if spans are not received within a certain time frame. (#30559)
    The feature can be configured by specifiying the desired duration in the metrics_expiration option. By default, the expiration is disabled (set to 0).

🛑 Breaking changes 🛑

  • (Splunk) collectd/kong: Remove collectd/kong. Please use the Prometheus receiver instead. (#4420)
  • (Splunk) spanmetricsprocessor: Remove spanmetricsprocessor. Please use spanmetrics connector instead. (#4454)
  • (Core) telemetry: Remove telemetry.useOtelForInternalMetrics stable feature gate (#9752)
  • (Contrib) receiver/postgresql: Bump postgresqlreceiver.preciselagmetrics gate to beta (#31220)
  • (Contrib) receiver/vcenter: Bump receiver.vcenter.emitPerfMetricsWithObjects feature gate to stable (#31215)
  • (Contrib) prometheusreceiver: Remove enable_protobuf_negotiation option on the prometheus receiver. Use config.global.scrape_protocols = [ PrometheusProto, OpenMetricsText1.0.0, OpenMetricsText0.0.1, PrometheusText0.0.4 ] instead. (#30883)
    See https://prometheus.io/docs/prometheus/latest/configuration/configuration/#configuration-file for details on setting scrape_protocols.
  • (Contrib) vcenterreceiver: Fixed the resource attribute model to more accurately support multi-cluster deployments (#30879)
    For more information on impacts please refer open-telemetry/opentelemetry-collector-contrib#31113. The main impacts are that
    the vcenter.resource_pool.name, vcenter.resource_pool.inventory_path, and vcenter.cluster.name are reported with more accuracy on VM metrics.

🧰 Bug fixes 🧰

  • (Splunk) telemetry: Simplify the config converter setting the metric_relabel_configs in the Prometheus receiver
    to remove the excessive internal metrics. Now, it only overrides the old default rule excluding .*grpc_io.* metrics.
    Any other custom setting is left untouched. Otherwise, customizing the metric_relabel_configs is very difficult.
    (#4482)
  • (Core) exporterhelper: Fix persistent queue size backup on reads. (#9740)
  • (Core) processor/batch: Prevent starting unnecessary goroutines. (#9739)
  • (Core) otlphttpexporter: prevent error on empty response body when content type is application/json (#9666)
  • (Core) otelcol: Respect telemetry configuration when running as a Windows service (#5300)
  • (Contrib) carbonreceiver: Do not report fatal error when closed normally (#31913)
  • (Contrib)exporter/loadbalancing: Fix panic when a sub-exporter is shut down while still handling requests. (#31410)
  • (Contrib) hostmetricsreceiver: Adds the receiver.hostmetrics.normalizeProcessCPUUtilization feature gate to optionally normalize process.cpu.utilization values. (#31368)
    When enabled, the receiver.hostmetrics.normalizeProcessCPUUtilization feature gate will cause process.cpu.utilization values to be divided by the number of logical cores on the system. This is necessary to produce a value on the interval of [0-1], as the description of process.cpu.utilization the metric says.
  • (Contrib) transformprocessor: Change metric unit for metrics extracted with extract_count_metric() to be the default unit (1) (#31575)
    The original metric unit does not apply to extracted count metrics the same way it does to sum, min or max.
    Metrics extracted using extract_count_metric() now use the more appropriate default unit (1) instead.
  • (Contrib) loadbalancingexporter: Fix memory leaks on shutdown (#31050)
  • (Contrib) signalfxexporter: Fix memory leak in shutdown (#30864, #30438)
  • (Contrib) processor/k8sattributes: Allows k8sattributes processor to work with k8s role/rolebindings when filter::namespace is set. ([#14742](https://github.com/ope...
Read more

v0.96.1

11 Mar 23:49
6faf9c6
Compare
Choose a tag to compare

v0.96.1

This Splunk OpenTelemetry Collector release includes changes from the opentelemetry-collector v0.96.0 and the opentelemetry-collector-contrib v0.96.0 releases where appropriate.

🚀 New components 🚀

  • (Splunk) Add the cumulativetodelta processor (#4401)

🛑 Breaking changes 🛑

  • (Splunk) databricksreceiver: Remove databricks receiver, as it will be rebuilt upstream (#4415)
  • (Core) configgrpc: Remove deprecated GRPCClientSettings, GRPCServerSettings, and ServerConfig.ToListenerContext. (#9616)
  • (Core) confighttp: Remove deprecated HTTPClientSettings, NewDefaultHTTPClientSettings, and CORSSettings. (#9625)
  • (Core) confignet: Removes deprecated NetAddr and TCPAddr (#9614)
  • (Contrib) spanmetricsprocessor: Remove spanmetrics processor (#29567)
    • You can use the spanmetrics connector as a replacement
  • (Contrib) httpforwarder: Remove extension named httpforwarder, use httpforwarderextension instead. (#24171)
  • (Contrib) k8sclusterreceiver: Remove deprecated k8s.kubeproxy.version resource attribute (#29748)

💡 Enhancements 💡

  • (Splunk) Bump github.com/prometheus/common from 0.46.0 to 0.49.0 (#4353)
  • (Splunk) Bumps aquasecurity/trivy-action from 0.17.0 to 0.18.0 (#4382)
  • (Splunk) Update splunk-otel-javaagent to latest (#4402)
  • (Splunk) Add X-SF-Token header to the configuration masked keys (#4403)
  • (Splunk) Bump setuptools in /internal/signalfx-agent/bundle/script(#4330)
  • (Splunk) Rocky Linux installation support (#4398)
  • (Splunk) Add a test to check what we choose to redact (#4406)
  • (Splunk) Fixed high alert vulnerabity (#4407)
  • (Splunk) Update pgproto to 2.3.3 (#4409)
  • (Core) configtls: Add include_system_ca_certs_pool to configtls, allowing to load system certs and additional custom certs. (#7774)
  • (Core) otelcol: Add ConfigProviderSettings to CollectorSettings (#4759)
    This allows passing a custom list of confmap.Providers to otelcol.NewCommand.
  • (Core) pdata: Update to OTLP v1.1.0 (#9587)
    Introduces Span and SpanLink flags.
  • (Core) confmap: Update mapstructure to use a maintained fork, github.com/go-viper/mapstructure/v2. (#9634)
    See mitchellh/mapstructure#349 for context.
  • (Contrib) statsdreceiver: Add support for the latest version of DogStatsD protocol (v1.3) (#31295)
  • (Contrib) fileexporter: Scope the behavior of the fileexporter to its lifecycle, so it is safe to shut it down or restart it. (#27489)
  • (Contrib) processor/resourcedetection: Add processor.resourcedetection.hostCPUSteppingAsString feature gate to change the type of host.cpu.stepping from int to string. (#31136)
    This feature gate will graduate to beta in the next release.
  • (Contrib) routingconnector: a warning is logged if there are two or more routing items with the same routing statement (#30663)
  • (Contrib) pkg/ottl: Add new IsInt function to facilitate type checking. (#27894)
  • (Contrib) cmd/mdatagen: Make lifecycle tests generated by default (#31532)
  • (Contrib) pkg/stanza: Improve timestamp parsing documentation (#31490)
  • (Contrib) postgresqlreceiver: Add receiver.postgresql.connectionPool feature gate to reuse database connections (#30831)
    The default implementation recreates and closes connections on each scrape per database configured/discovered.
    This change offers a feature gated alternative to keep connections open. Also, it exposes connection configuration to control the behavior of the pool.
  • (Core) configretry: Allow max_elapsed_time to be set to 0 for indefinite retries (#9641)
  • (Core) client: Make Metadata.Get thread safe (#9595)
  • (Contrib) carbonreceiver: Accept carbon metrics with float timestamps (#31312)
  • (Contrib) journaldreceiver: Fix bug where failed startup could bury error message due to panic during shutdown (#31476)
  • (Contrib) loadbalancingexporter: Fixes a bug where the endpoint become required, despite not being used by the load balancing exporter. (#31371)
  • (Contrib) oracledbreceiver: Use metadata.Type for the scraper id to avoid invalid scraper IDs. (#31457)
  • (Contrib) filelogreceiver: Fix bug where delete_after_read would cause panic (#31383)
  • (Contrib) receiver/filelog: Fix issue where file fingerprint could be corrupted while reading. (#22936)

New Contributors

Full Changelog: v0.95.0...v0.96.1

v0.96.0

11 Mar 20:37
c4fa9f7
Compare
Choose a tag to compare
v0.96.0 Pre-release
Pre-release

⚠️ This Splunk OpenTelemetry Collector release is missing changes from the opentelemetry-collector v0.96.0 and the opentelemetry-collector-contrib v0.96.0 releases. ⚠️

Please use v0.96.1.

v0.95.0

06 Mar 00:07
v0.95.0
2fab7e1
Compare
Choose a tag to compare

This Splunk OpenTelemetry Collector release includes changes from the opentelemetry-collector v0.95.0 and the opentelemetry-collector-contrib v0.95.0 releases where appropriate.

🛑 Breaking changes 🛑

  • (Splunk/Core/Contrib) Bump minimum version to go 1.21 (#4390)
  • (Core) all: scope name for all generated Meter/Tracer funcs now includes full package name (#9494)
  • (Contrib) receiver/mongodb: Bump receiver.mongodb.removeDatabaseAttr feature gate to beta (#31212)
  • (Contrib) extension/filestorage: The filestorage extension is now a standalone module. (#31040)

💡 Enhancements 💡

  • (Splunk) MSI defaults to per machine install to avoid issues when different administrators install and update the collector on the same Windows machine (#4352)
  • (Core) confighttp: Adds support for Snappy decompression of HTTP requests. (#7632)
  • (Core) configretry: Validate max_elapsed_time, ensure it is larger than max_interval and initial_interval respectively. (#9489)
  • (Core) configopaque: Mark module as stable (#9167)
  • (Core) otlphttpexporter: Add support for json content encoding when exporting telemetry (#6945)
  • (Core) confmap/converter/expandconverter, confmap/provider/envprovider, confmap/provider/fileprovider, confmap/provider/httprovider, confmap/provider/httpsprovider, confmap/provider/yamlprovider: Split confmap.Converter and confmap.Provider implementation packages out of confmap. (#4759, #9460)
  • (Contrib) hostmetricsreceiver: Add a new optional resource attribute process.cgroup to the process scraper of the hostmetrics receiver. (#29282)
  • (Contrib) awss3exporter: Add a marshaler that stores the body of log records in s3. (#30318)
  • (Contrib) pkg/ottl: Adds a new ParseCSV converter that can be used to parse CSV strings. (#30921)
  • (Contrib) loadbalancingexporter: Add benchmarks for Metrics and Traces (#30915)
  • (Contrib) pkg/ottl: Add support to specify the format for a replacement string (#27820)
  • (Contrib) pkg/ottl: Add ParseKeyValue function for parsing key value pairs from a target string (#30998)
  • (Contrib) receivercreator: Remove use of ReportFatalError (#30596)
  • (Contrib) processor/tail_sampling: Add metrics that measure the number of sampled spans and the number of spans that are dropped due to sampling decisions. (#30482)
  • (Contrib) exporter/signalfx: Send histograms in otlp format with new config send_otlp_histograms option (#26298)
  • (Contrib) receiver/signalfx: Accept otlp protobuf requests when content-type is "application/x-protobuf;format=otlp" (#26298)
  • (Contrib) signalfxreceiver: Remove deprecated use of host.ReportFatalError (#30598)

🧰 Bug fixes 🧰

  • (Contrib) pkg/stanza: Add 'allow_skip_pri_header' flag to syslog setting. (#30397)
    Allow parsing syslog records without PRI header. Currently pri header is beng enforced although it's not mandatory by the RFC standard. Since influxdata/go-syslog is not maintained we had to switch to haimrubinstein/go-syslog.
  • (Contrib) extension/storage: Ensure fsync is turned on after compaction (#20266)
  • (Contrib) logstransformprocessor: Fix potential panic on shutdown due to incorrect shutdown order (#31139)
  • (Contrib) receiver/prometheusreceiver: prometheusreceiver fix translation of metrics with _created suffix (#30309)
  • (Contrib) pkg/stanza: Fixed a bug in the keyvalue_parser where quoted values could be split if they contained a delimited. (#31034)

Docker Images:

  • quay.io/signalfx/splunk-otel-collector:0.95.0-amd64 (digest: sha256:f465f4c173a5f4c684429a0c3118ce5765d1f2271ba5d37eb9a25c10be7f0f6f)
  • quay.io/signalfx/splunk-otel-collector:0.95.0-arm64 (digest: sha256:9d6389327f2209b362b40f165d6ded6bdf6a517245bb17b22d984cc5b81e1cb7)
  • quay.io/signalfx/splunk-otel-collector:0.95.0-ppc64le (digest: sha256:03f52ed265158b3e4c250f474f59bbcd4c9c17e1393f4c4dcb0877a32a8709a1)
  • quay.io/signalfx/splunk-otel-collector-windows:0.95.0 (digest: sha256:40f49888280c1ff8536f5eba4c34cc05546563400776b13235db73f27fc50dc5)
  • quay.io/signalfx/splunk-otel-collector-windows:0.95.0-2019 (digest: sha256:364cd18a62bd6ab090bd6eb4748d24b1172e7bdfd0b8e1d21f9b06a9f054860d)
  • quay.io/signalfx/splunk-otel-collector-windows:0.95.0-2022 (digest: sha256:47cfb6a2ece9de5db4e6df9f09721c9b9a1bb05ebe28b50253bad15b2c046f7a)

v0.94.0

02 Mar 00:13
v0.94.0
c605cad
Compare
Choose a tag to compare

This Splunk OpenTelemetry Collector release includes changes from the opentelemetry-collector v0.94.1 and the opentelemetry-collector-contrib v0.94.0 releases where appropriate.

🛑 Breaking changes 🛑

  • (Splunk) The Splunk OpenTelemetry Collector Windows install script
    now installs the Splunk Distribution of OpenTelemetry .NET
    instead of the SignalFx Instrumentation for .NET
    when the parameter -with_dotnet_instrumentation is set to $true (#4343)
  • (Core) receiver/otlp: Update gRPC code from codes.InvalidArgument to codes.Internal when a permanent error doesn't contain a gRPC status (#9415)
  • (Contrib) kafkareceiver: standardizes the default topic name for metrics and logs receivers to the same topic name as the metrics and logs exporters of the kafkaexporter (#27292)
    If you are using the Kafka receiver in a logs and/or a metrics pipeline
    and you are not customizing the name of the topic to read from with the topic property,
    the receiver will now read from otlp_logs or otlp_metrics topic instead of otlp_spans topic.
    To maintain previous behavior, set the topic property to otlp_spans.
  • (Contrib) pkg/stanza: Entries are no longer logged during error conditions. (#26670)
    This change is being made to ensure sensitive information contained in logs are never logged inadvertently.
    This change is a breaking change because it may change user expectations. However, it should require
    no action on the part of the user unless they are relying on logs from a few specific error cases.
  • (Contrib) pkg/stanza: Invert recombine operator's 'overwrite_with' default value. (#30783)
    Previously, the default value was oldest, meaning that the recombine operator should emit the
    first entry from each batch (with the recombined field). However, the actual behavior was inverted.
    This fixes the bug but also inverts the default setting so as to effectively cancel out the bug fix
    for users who were not using this setting. For users who were explicitly setting overwrite_with,
    this corrects the intended behavior.

🚩 Deprecations 🚩

  • (Core) configgrpc: Deprecate GRPCClientSettings, use ClientConfig instead (#6767)

💡 Enhancements 💡

  • (Splunk) Add a resource attribute to internal metrics to track discovery usage (#4323)
  • (Splunk) Create a multi-architecture Windows docker image for the collector (#4296)
  • (Splunk) Bump splunk-otel-javaagent to v1.30.2 (#4300)
  • (Core) mdatagen: Add a generated test that checks the config struct using componenttest.CheckConfigStruct (#9438)
  • (Core) component: Add component.UseLocalHostAsDefaultHost feature gate that changes default endpoints from 0.0.0.0 to localhost (#8510)
    The only component in this repository affected by this is the OTLP receiver.
  • (Core) confighttp: Add support of Host header (#9395)
  • (Core) mdatagen: Remove use of ReportFatalError in generated tests (#9439)
  • (Contrib) receiver/journald: add a new config option "all" that turns on full output from journalctl, including lines that are too long. (#30920)
  • (Contrib) pkg/stanza: Add support in a header configuration for json array parser. (#30321)
  • (Contrib) awss3exporter: Add the ability to export trace/log/metrics in OTLP ProtoBuf format. (#30682)
  • (Contrib) dockerobserver: Upgrading Docker API version default from 1.22 to 1.24 (#30900)
  • (Contrib) filterprocessor: move metrics from OpenCensus to OpenTelemetry (#30736)
  • (Contrib) groupbyattrsprocessor: move metrics from OpenCensus to OpenTelemetry (#30763)
  • (Contrib) loadbalancingexporter: Optimize metrics and traces export (#30141)
  • (Contrib) all: Add component.UseLocalHostAsDefaultHost feature gate that changes default endpoints from 0.0.0.0 to localhost (#30702)
    This change affects the following components:
    • extension/health_check
    • receiver/jaeger
    • receiver/sapm
    • receiver/signalfx
    • receiver/splunk_hec
    • receiver/zipkin
  • (Contrib) processor/resourcedetectionprocessor: Detect Azure cluster name from IMDS metadata (#26794)
  • (Contrib) processor/transform: Add copy_metric function to allow duplicating a metric (#30846)

🧰 Bug fixes 🧰

  • (Splunk) Fixes the value of a default environment variable used by Windows msi. (#4361)
  • (Core) service: fix opencensus bridge configuration in periodic readers (#9361)
  • (Core) otlpreceiver: Fix goroutine leak when GRPC server is started but HTTP server is unsuccessful (#9165)
  • (Core) otlpexporter: PartialSuccess is treated as success, logged as warning. (#9243)
  • (Contrib) basicauthextension: Accept empty usernames. (#30470)
    Per https://datatracker.ietf.org/doc/html/rfc2617#section-2, username and password may be empty strings ("").
    The validation used to enforce that usernames cannot be empty.
  • (Contrib) pkg/ottl: Fix parsing of string escapes in OTTL (#23238)
  • (Contrib) pkg/stanza: Recombine operator should always recombine partial logs (#30797)
    Previously, certain circumstances could result in partial logs being emitted without any
    recombiniation. This could occur when using is_first_entry, if the first partial log from
    a source was emitted before a matching "start of log" indicator was found. This could also
    occur when the collector was shutting down.
  • (Contrib) pkg/stanza: Fix bug where recombine operator's 'overwrite_with' condition was inverted. (#30783)
  • (Contrib) exporter/signalfx: Use "unknown" value for the environment correlation calls as fallback. (#31052)
    This fixed the APM/IM correlation in the Splunk Observability UI for the users that send traces with no "deployment.environment" resource attribute value set.

Docker Images:

  • quay.io/signalfx/splunk-otel-collector:0.94.0-amd64 (digest: sha256:6d89f4d866af70e3d83880b355c8c3a3cac0c9bdabaf3ea9312250cf7c917649)
  • quay.io/signalfx/splunk-otel-collector:0.94.0-arm64 (digest: sha256:15a090e07e61ec752471088e6db65f74540870c2942d162ecb866619fd7f9170)
  • quay.io/signalfx/splunk-otel-collector:0.94.0-ppc64le (digest: sha256:2e640ccd1e46b9e707de7e991073baf1376ea8b2b869ec75bec0045a08018dab)
  • quay.io/signalfx/splunk-otel-collector-windows:0.94.0 (digest: sha256:fd2683b996d6a0a79378576a705b0edc0a326df32c12cad87615307adf128a31)
  • quay.io/signalfx/splunk-otel-collector-windows:0.94.0-2019 (digest: sha256:dec27aad01f6991e0535c37555682ae697827af2461fd14c09bd5e3cc7184efd)
  • quay.io/signalfx/splunk-otel-collector-windows:0.94.0-2022 (digest: sha256:9b8cee1d6ba55bcbec2b280d1f23d6a69b556298d945618e62bca7e2fea6d22f)

v0.93.0

09 Feb 02:49
v0.93.0
32fa7b5
Compare
Choose a tag to compare

This Splunk OpenTelemetry Collector release includes changes from the opentelemetry-collector v0.93.0 and the opentelemetry-collector-contrib v0.93.0 releases where appropriate.

🛑 Breaking changes 🛑

  • (Splunk) On Windows the SPLUNK_* environment variables were moved from the machine scope to the collector service scope This avoids collisions with other agents and instrumentation. If any of these environment variables are required by your apps, please adopt them directly. (#3930)
  • (Splunk) mysql discovery now uses the OpenTelemetry Collector Contrib receiver by default instead of the smartagent receiver. (#4231)
  • (Splunk) Stop sending internal Collector metrics from the batch processor. Drop them at the prometheus receiver level. (#4273)
  • (Core) exporterhelper: remove deprecated exporterhelper.RetrySettings and exporterhelper.NewDefaultRetrySettings (#9256)
  • (Contrib) vcenterreceiver: "receiver.vcenter.emitPerfMetricsWithObjects" feature gate is beta and enabled by default (#30615)
  • (Contrib) docker: Adopt api_version as strings to correct invalid float truncation (#24025)
  • (Contrib) extension/filestorage: Replace path-unsafe characters in component names (#3148)
    The feature gate extension.filestorage.replaceUnsafeCharacters is now enabled by default.
    See the File Storage extension's README for details.
  • (Contrib) postgresqlreceiver: add feature gate receiver.postgresql.separateSchemaAttr to include schema as separate attribute (#29559)
    Enabling the featuregate adds a new resource attribute to store the schema of the table or index
    Existing table attributes are adjusted to not include the schema, which was inconsistently used

💡 Enhancements 💡

  • (Splunk) Update opentelemetry-jmx-metrics version to 1.32.0 (#4201)
  • (Core) configtls: add cipher_suites to configtls. (#8105)
    Users can specify a list of cipher suites to pick from. If left blank, a safe default list is used.
  • (Core) service: mark telemetry.useOtelForInternalMetrics as stable (#816)
    (Splunk) Remove disabled telemetry.useOtelForInternalMetrics feature gate from our distribution. Some new internal metrics are now dropped at scrape time.
  • (Core) exporters: Cleanup log messages for export failures (#9219)
    1. Ensure an error message is logged every time and only once when data is dropped/rejected due to export failure.
    2. Update the wording. Specifically, don't use "dropped" term when an error is reported back to the pipeline.
      Keep the "dropped" wording for failures happened after the enabled queue.
    3. Properly report any error reported by a queue. For example, a persistent storage error must be reported as a storage error, not as "queue overflow".
  • (Contrib) pkg/stanza: Add a json array parser operator and an assign keys transformer. (#30321)
    Json array parser opreator can be used to parse a json array string input into a list of objects. |
    Assign keys transformer can be used to assigns keys from the configuration to an input list
  • (Contrib) splunkhecexporter: Batch data according to access token and index, if present. (#30404)
  • (Contrib) k8sattributesprocessor: Apply lifecycle tests to k8sprocessor, change its behavior to report fatal error (#30387)
  • (Contrib) k8sclusterreceiver: add new disabled os.description, k8s.container_runtime.version resource attributes (#30342)
  • (Contrib) k8sclusterreceiver: add os.type resource attribute (#30342)
  • (Contrib) kubeletstatsreceiver: Add new *.cpu.usage metrics. (#25901)
  • (Contrib) pkg/ottl: Add flatten function for flattening maps (#30455)
  • (Contrib) redisreciever: adds metric for slave_repl_offset (#6942)
    also adds a shell script to set up docker-compose integration test
  • (Contrib) receiver/sqlquery: Add debug log when running SQL query (#29672)

🧰 Bug fixes 🧰

  • (Core) otlpreceiver: Ensure OTLP receiver handles consume errors correctly (#4335)
    Make sure OTLP receiver returns correct status code and follows the receiver contract (gRPC)
  • (Core) zpagesextension: Remove mention of rpcz page from zpages extension (#9328)
  • (Contrib) kafkareceiver: The Kafka receiver now exports some partition-specific metrics per-partition, with a partition tag (#30177)
    The following metrics now render per partition:
    • kafka_receiver_messages
    • kafka_receiver_current_offset
    • kafka_receiver_offset_lag

Docker Images:

  • quay.io/signalfx/splunk-otel-collector:0.93.0-amd64 (digest: sha256:c2237acb476ce38263b4709326d9f9f3859d0f32de9ef8c5fde5bf6017ef8b39)
  • quay.io/signalfx/splunk-otel-collector:0.93.0-arm64 (digest: sha256:52edfef95657a1058487456d8e5fe3fe9298fd65806b2c89b80ee1375c406f75)
  • quay.io/signalfx/splunk-otel-collector:0.93.0-ppc64le (digest: sha256:8ee5a2979c84792aab5c9ea484e188f1614d9dd89fd0b3baa6c410200be72917)
  • quay.io/signalfx/splunk-otel-collector-windows:0.93.0 (digest: sha256:77f91c139ca080d61253816e5929c4b88fe0ade88d51567481473cba56414900)
  • quay.io/signalfx/splunk-otel-collector-windows:0.93.0-2022 (digest: sha256:c0e5c0870c199ec5f1c4b71aee61507abd67f9acd5defe3dad2511e78404ffa8)

v0.92.0

19 Jan 17:47
v0.92.0
b459ceb
Compare
Choose a tag to compare

This Splunk OpenTelemetry Collector release includes changes from the opentelemetry-collector v0.92.0 and the opentelemetry-collector-contrib v0.92.0 releases where appropriate.

🛑 Breaking changes 🛑

  • (Contrib) httpforwarder: Use confighttp.HTTPDefaultClientSettings when configuring the HTTPClientSettings for the httpforwarder extension. (#6641)
    By default, the HTTP forwarder extension will now use the defaults set in the extension:
    • The idle connection timeout is set to 90s.
    • The max idle connection count is set to 100.
  • (Contrib) pkg/ottl: Now validates against extraneous path segments that a context does not know how to use. (#30042)
  • (Contrib) pkg/ottl: Throw an error if keys are used on a path that does not allow them. (#30162)
  • (Core) exporters/sending_queue: Do not re-enqueue failed batches, rely on the retry_on_failure strategy instead. (#8382)
    The current re-enqueuing behavior is not obvious and cannot be configured. It takes place only for persistent queue
    and only if retry_on_failure::enabled=true even if retry_on_failure is a setting for a different backoff retry
    strategy. This change removes the re-enqueuing behavior. Consider increasing retry_on_failure::max_elapsed_time
    to reduce chances of data loss or set it to 0 to keep retrying until requests succeed.
  • (Core) confmap: Make the option WithErrorUnused enabled by default when unmarshaling configuration (#7102)
    The option WithErrorUnused is now enabled by default, and a new option WithIgnoreUnused is introduced to ignore
    errors about unused fields.

🚩 Deprecations 🚩

  • (Contrib) k8sclusterreceiver: deprecate optional k8s.kubeproxy.version resource attribute (#29748)
  • (Core) exporterhelper: Deprecate exporterhelper.RetrySettings in favor of configretry.BackOffConfig (#9091)
  • (Core) extension/ballast: Deprecate memory_ballast extension. (#8343)
    Use GOMEMLIMIT environment variable instead.

💡 Enhancements 💡

  • (Splunk) support core service validate command (#4175)
  • (Splunk) Add routing connector to Splunk distribution (#4167)
  • (Contrib) adopt splunkhec batch by token and index updates (#4151)
  • (Contrib) vcenterreceiver: Add explicit statement of support for version 8 of ESXi and vCenter (#30274)
  • (Contrib) routingconnector: routingconnector supports matching the statement only once (#26353)
  • (Contrib) filterprocessor: Add telemetry for metrics, logs, and spans that were intentionally dropped via filterprocessor. (#13169)
  • (Contrib) pkg/ottl: Add Hour OTTL Converter (#29468)
  • (Contrib) kafkaexporter: add ability to publish kafka messages with message key of TraceID - it will allow partitioning of the kafka Topic. (#12318)
  • (Contrib) kafkareceiver: Add three new metrics to record unmarshal errors. (#29302)
  • (Contrib) hostmetricsreceiver: Add system.memory.limit metric reporting the total memory available. (#30306)
    This metric is opt-in. To enable it, set scrapers::memory::metrics::system.memory.limit::enabled to true in the hostmetrics config.
  • (Contrib) kafkaexporter: Adds the ability to configure the Kafka client's Client ID. (#30144)
  • (Contrib) pkg/stanza: Remove sampling policy from logger (#23801)
  • (Contrib) resourcedetectionprocessor: Add "aws.ecs.task.id" attribute (#8274)
    Resourcedetectionprocessor now exports "aws.ecs.task.id" attribute, in addition to "aws.ecs.task.arn".
    This allows exporters like "awsemfexporter" to automatically pick up that attribute and make it available
    in templating (e.g. to use in CloudWatch log stream name).
  • (Contrib) spanmetricsconnector: Fix OOM issue for spanmetrics by limiting the number of exemplars that can be added to a unique dimension set (#27451)
  • (Contrib) connector/spanmetrics: Configurable resource metrics key attributes, filter the resource attributes used to create the resource metrics key. (#29711)
    This enhancement can be used to fix broken spanmetrics counters after a span producing service restart, when resource attributes contain dynamic/ephemeral values (e.g. process id).
  • (Contrib) splunkhecreceiver: Returns json response in raw endpoint when it is successful (#29875)
  • (Contrib) sqlqueryreceiver: Swap MS SQL Server driver from legacy 'denisenkom' to official Microsoft fork (#27200)
  • (Core) exporterhelper: Add RetrySettings validation function (#9089)
    Validate that time.Duration, multiplier values in configretry are non-negative, and randomization_factor is between 0 and 1
  • (Core) service: Enable telemetry.useOtelForInternalMetrics by updating the flag to beta (#7454)
    The metrics generated should be consistent with the metrics generated
    previously with OpenCensus. Splunk note: this option is disabled in our distribution. Users can enable the behaviour
    by setting --feature-gates +telemetry.useOtelForInternalMetrics at collector start if the new histograms are desired.
  • (Core) confignet: Add dialer_timeout config option. (#9066)
  • (Core) processor/memory_limiter: Update config validation errors (#9059)
    • Fix names of the config fields that are validated in the error messages
    • Move the validation from start to the initialization phrase
  • (Core) exporterhelper: Add config Validate for TimeoutSettings (#9104)

🧰 Bug fixes 🧰

  • (Contrib) filterset: Fix concurrency issue when enabling caching. (#11829)
  • (Contrib) pkg/ottl: Fix issue with the hash value of a match subgroup in replace_pattern functions. (#29409)
  • (Contrib) prometheusreceiver: Fix configuration validation to allow specification of Target Allocator configuration without providing scrape configurations (#30135)
  • (Contrib) wavefrontreceiver: Return error if partially quoted (#30315)
  • (Contrib) hosmetricsreceiver: change cpu.load.average metrics from 1 to {thread} (#29914)
  • (Contrib) pkg/ottl: Fix bug where the Converter IsBool was not usable (#30151)
  • (Contrib) time: The %z strptime format now correctly parses Z as a valid timezone (#29929)
    strptime(3) says that %z is "an RFC-822/ISO 8601 standard
    timezone specification", but the previous code did not allow the
    string "Z" to signify UTC time, as required by ISO 8601. Now, both
    +0000 and Z are recognized as UTC times in all components that
    handle strptime format strings.
  • (Core) memorylimiterprocessor: Fixed leaking goroutines from memorylimiterprocessor (#9099)
  • (Core) cmd/otelcorecol: Fix the code detecting if the collector is running as a service on Windows. (#7350)
    Removed the NO_WINDOWS_SERVICE environment variable given it is not needed anymore.
  • (Core) otlpexporter: remove dependency of otlphttpreceiver on otlpexporter (#6454)

Docker Images:

  • `quay.io/signalfx/splunk...
Read more

v0.91.3

10 Jan 04:38
v0.91.3
Compare
Choose a tag to compare

🛑 Breaking changes 🛑

  • (Splunk) - ecs-metadata sync the known_status property on the container_id dimension instead of lower cardinality container_name. This can be prevented by configuring dimensionToUpdate to container_name (#4091)
  • (Splunk) Removes collectd/disk monitor (#3998)
    This monitor has been deprecated in favor of the disk-io monitor.
    Note that the disk-io monitor has a different dimension (disk
    instead of plugin_instance) to specify the disk.
  • (Splunk) Removes collectd/df monitor (#3996)
    The monitor is deprecated and the filesystems monitor should be used instead.
  • (Splunk) Removes netinterface monitor (#3991)
    This monitor is deprecated in favor of the net-io monitor.
  • (Splunk) Removes collectd/vmem monitor (#3993)
    This monitor is deprecated in favor of the vmem monitor. The metrics should be fully compatible with this monitor.
  • (Splunk) Removes collectd/load monitor (#3995)
    This monitor has been deprecated in favor of the load monitor. That monitor emits the same metrics and is fully compatible.
  • (Splunk) Removes collectd/postgresql monitor (#3994)
    This monitor is deprecated in favor of the postgresql monitor.

💡 Enhancements 💡

  • (Splunk) Adopt vcenter receiver (#4291)
  • (Splunk) Adopt sshcheck receiver (#4099)
  • (Splunk) Adopt awss3 exporter (#4117)
  • (Splunk) Convert loglevel to verbosity on logging exporter (#4097)

Docker Images:

  • quay.io/signalfx/splunk-otel-collector:0.91.3-amd64 (digest: sha256:d469e3372384604b36a6180525c9aacdd49fcbd082c618cfeede49fec7f35ada)
  • quay.io/signalfx/splunk-otel-collector:0.91.3-arm64 (digest: sha256:2201612e13501157616eb2399d4474cbc91fcea5b36e2b0d4864b635f5c07c3a)
  • quay.io/signalfx/splunk-otel-collector:0.91.3-ppc64le (digest: sha256:c967f7023d8bb8f260b63c8ec6de90c7ec4d3b87c010e743376fdfe5d6f5b92b)
  • quay.io/signalfx/splunk-otel-collector-windows:0.91.3 (digest: sha256:05a736f642207dbfcc1f2c3ead2ff771b6ee8b746eec7925c4af62ee2c452a83)
  • quay.io/signalfx/splunk-otel-collector-windows:0.91.3-2022 (digest: sha256:703f38c4431edefa43ed9b52ffcbbefe9463b9afb44443c5e845c6ec109d5d70)

v0.91.1

19 Dec 00:34
c5e933a
Compare
Choose a tag to compare

💡 Enhancements 💡

  • (Splunk) Remove the project beta label (#4070)
  • (Splunk) Source SPLUNK_LISTEN_INTERFACE on all host endpoints(#4065)
  • (Splunk) Add support for start timestamps when using the light prometheus receiver (#4037)
  • (Splunk) Node.js Auto Instrumentation:
    • Update splunk-otel-js to v2.6.0 (#4064)
    • Update linux installer script to use --global=false for local npm versions and configurations (#4068)

🛑 Breaking changes 🛑

  • postgresql Discovery now uses the OpenTelemetry Collector Contrib receiver by default instead of the smartagent receiver (#3957)

Docker Images:

  • quay.io/signalfx/splunk-otel-collector:0.91.1-amd64 (digest: sha256:86f99bf2224cbaa9ed5ebf7346e31619dc6d1ac16393dd089b635dc0606a55b0)
  • quay.io/signalfx/splunk-otel-collector:0.91.1-arm64 (digest: sha256:0b15a2f8f0431f1b3e37060fed5d49a0aa661215c197f881aa22e992a1a255f7)
  • quay.io/signalfx/splunk-otel-collector:0.91.1-ppc64le (digest: sha256:ee2898ba48c5ae41db268340388a12bfd12ad92a61f116fd62af6cad1d2a9097)
  • quay.io/signalfx/splunk-otel-collector-windows:0.91.1 (digest: sha256:ca400b1cf29738d4cf4ce8012189b3e0b81072a875c239902c0ec0f503fa9237)
  • quay.io/signalfx/splunk-otel-collector-windows:0.91.1-2022 (digest: sha256:ef6f41051f553b2766658d1f6a0cfbd69955fe342c21d2d4426089d9a27eeced)