Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[pull] main from open-telemetry:main #25

Merged
merged 135 commits into from
Aug 29, 2023
Merged

Conversation

pull[bot]
Copy link

@pull pull bot commented Aug 12, 2023

See Commits and Changes for more details.


Created by pull[bot]

Can you help keep this open source service alive? 💖 Please sponsor : )

djaglowski and others added 2 commits August 12, 2023 07:54
…bute (#23668)

**Description:** 
Add k8s.cluster.uid to attribute to k8sattributes processor and disable
it by default for backward compatibility. Users can set it to `true` to
populate cluster uid as part of resource attributes.

**Link to tracking Issue:**
#21974
@pull pull bot added the ⤵️ pull label Aug 12, 2023
evan-bradley and others added 27 commits August 12, 2023 20:07
This is primarily to align the version with what the Collector uses in
`confmap`. It doesn't introduce any functional changes.
**Description:** 
related #23266

Signed-off-by: Ziqi Zhao <zhaoziqi9146@gmail.com>
Bump github.com/openzipkin/zipkin-go from 0.4.1 to 0.4.2 in
/receiver/pulsarreceiver
This pull request is for a newly created Datadog connector that replaces
the need for the Datadog processor. This replacement is needed because
the processor made use of a work-around that directly allowed the
processor to export data. This is not something that adheres to the
OpenTelemetry standard and thus the previous system should be deprecated
and replaced by this new connector.

Link to issue:
#19740

---------

Co-authored-by: Yang Song <songy23@users.noreply.github.com>
Co-authored-by: Pablo Baeyens <pbaeyens31+github@gmail.com>
…ent concurrent write to buffer. (#25100)

Change the TCP/UDP inputs so that they parse the
encoding and get the `encoding.Encoding` during initialization, but wait
to create the `helper.Encoding` instance in each goroutine. This
prevents concurrent calls to `Decode` using the same instance.

Co-authored-by: Dan Jaglowski <jaglows3@gmail.com>
…mote mode of usage (#24981)

Updates the jaegerremotesampling extension's `remote` mode of usage to
support the `reload_interval` caching option already supported in `file`
mode of usage.

Co-authored-by: Anthony Mirabella <a9@aneurysm9.com>
… nested attributes containing dots to labels (#25142)

When the value for loki hint attribute contains dots (more than 1 dot)
and attributes are nested so some level contains dotted attribute name
(for example `{"log": {"file.name": "foo"}}`), the getNestedAttribute
function throws a panic

Co-authored-by: Tyler Helmuth <12352919+TylerHelmuth@users.noreply.github.com>
Corresponds to [Step
3](https://github.com/open-telemetry/opentelemetry-collector/blob/81242fa7eff332756df6e03034c0e6686b9b988e/docs/release.md?plain=1#L34)
of collector core release process. Updated as part of Step 8.

---------

Signed-off-by: Alex Boten <aboten@lightstep.com>
Co-authored-by: Alex Boten <aboten@lightstep.com>
Bump github.com/ClickHouse/clickhouse-go/v2 from 2.12.1 to 2.13.0 in
/exporter/clickhouseexporter
Bump github.com/antonmedv/expr from 1.12.5 to 1.13.0 in
/receiver/receivercreator
Bump github.com/aws/aws-sdk-go from 1.44.319 to 1.44.322 in
/exporter/kafkaexporter
Bump github.com/aws/aws-sdk-go from 1.44.319 to 1.44.322 in
/internal/aws/k8s
Bump github.com/aws/aws-sdk-go from 1.44.319 to 1.44.322 in
/internal/aws/xray/testdata/sampleapp
Bump github.com/aws/aws-sdk-go from 1.44.319 to 1.44.322 in
/receiver/awscontainerinsightreceiver
Bump github.com/aws/aws-sdk-go from 1.44.319 to 1.44.322 in
/receiver/awsxrayreceiver
Bump github.com/aws/aws-sdk-go from 1.44.319 to 1.44.323 in
/exporter/awscloudwatchlogsexporter
Bump github.com/aws/aws-sdk-go from 1.44.319 to 1.44.323 in
/exporter/awsxrayexporter
Bump github.com/aws/aws-sdk-go from 1.44.319 to 1.44.323 in
/exporter/kafkaexporter
Bump github.com/aws/aws-sdk-go from 1.44.319 to 1.44.323 in
/internal/aws/k8s
Bump github.com/aws/aws-sdk-go from 1.44.319 to 1.44.323 in
/internal/aws/proxy
Bump github.com/aws/aws-sdk-go from 1.44.319 to 1.44.323 in
/internal/aws/xray
Bump github.com/aws/aws-sdk-go from 1.44.319 to 1.44.323 in
/internal/aws/xray/testdata/sampleapp
Bump github.com/aws/aws-sdk-go from 1.44.319 to 1.44.323 in
/receiver/awscontainerinsightreceiver
Bump github.com/aws/aws-sdk-go from 1.44.319 to 1.44.323 in
/receiver/awsxrayreceiver
Bump github.com/daixiang0/gci from 0.10.1 to 0.11.0 in /internal/tools
Bump github.com/golangci/golangci-lint from 1.53.3 to 1.54.1 in
/internal/tools
Bump github.com/testcontainers/testcontainers-go from 0.22.0 to 0.23.0
in /extension/observer/dockerobserver
Bump github.com/testcontainers/testcontainers-go from 0.22.0 to 0.23.0
in /internal/coreinternal
Bump github.com/testcontainers/testcontainers-go from 0.22.0 to 0.23.0
in /receiver/aerospikereceiver
Bump github.com/testcontainers/testcontainers-go from 0.22.0 to 0.23.0
in /receiver/apachereceiver
Bump github.com/testcontainers/testcontainers-go from 0.22.0 to 0.23.0
in /receiver/dockerstatsreceiver
Bump github.com/testcontainers/testcontainers-go from 0.22.0 to 0.23.0
in /receiver/elasticsearchreceiver
Bump github.com/testcontainers/testcontainers-go from 0.22.0 to 0.23.0
in /receiver/jmxreceiver
Bump github.com/testcontainers/testcontainers-go from 0.22.0 to 0.23.0
in /receiver/kafkametricsreceiver
Bump github.com/testcontainers/testcontainers-go from 0.22.0 to 0.23.0
in /receiver/nginxreceiver
Bump github.com/testcontainers/testcontainers-go from 0.22.0 to 0.23.0
in /receiver/postgresqlreceiver
Bump github.com/testcontainers/testcontainers-go from 0.22.0 to 0.23.0
in /receiver/redisreceiver
Bump github.com/testcontainers/testcontainers-go from 0.22.0 to 0.23.0
in /receiver/sqlqueryreceiver
Bump github.com/testcontainers/testcontainers-go from 0.22.0 to 0.23.0
in /receiver/zookeeperreceiver
Bump go.mongodb.org/atlas from 0.32.0 to 0.33.0 in
/receiver/mongodbatlasreceiver
Bump go.opentelemetry.io/collector from 0.82.0 to 0.83.0 in /pkg/stanza
Bump go.opentelemetry.io/collector from 0.82.0 to 0.83.0 in
/receiver/carbonreceiver
Bump go.opentelemetry.io/collector/cmd/builder from
0.82.1-0.20230811173841-81242fa7eff3 to 0.83.0 in /internal/tools
Bump go.opentelemetry.io/collector/component from 0.82.0 to 0.83.0 in
/exporter/logzioexporter
Bump go.opentelemetry.io/collector/config/confighttp from 0.82.0 to
0.83.0 in /receiver/elasticsearchreceiver
Bump go.opentelemetry.io/collector/config/confighttp from 0.82.0 to
0.83.0 in /receiver/skywalkingreceiver
Bump go.opentelemetry.io/collector/config/confignet from 0.82.0 to
0.83.0 in /extension/jaegerremotesampling
Bump go.opentelemetry.io/collector/config/configopaque from 0.82.0 to
0.83.0 in /extension/jaegerremotesampling
Bump go.opentelemetry.io/collector/config/configtls from 0.82.0 to
0.83.0 in /processor/resourcedetectionprocessor
Bump go.opentelemetry.io/collector/config/configtls from 0.82.0 to
0.83.0 in /receiver/sapmreceiver
Bump go.opentelemetry.io/collector/config/configtls from 0.82.0 to
0.83.0 in /receiver/signalfxreceiver
Bump go.opentelemetry.io/collector/confmap from 0.82.0 to 0.83.0 in
/exporter/splunkhecexporter
Bump go.opentelemetry.io/collector/confmap from 0.82.0 to 0.83.0 in
/processor/logstransformprocessor
Bump go.opentelemetry.io/collector/confmap from 0.82.0 to 0.83.0 in
/receiver/awsfirehosereceiver
Bump go.opentelemetry.io/collector/confmap from 0.82.0 to 0.83.0 in
/receiver/rabbitmqreceiver
Bump go.opentelemetry.io/collector/confmap from 0.82.0 to 0.83.0 in
/receiver/saphanareceiver
Bump go.opentelemetry.io/collector/confmap from 0.82.0 to 0.83.0 in
/receiver/signalfxreceiver
Bump go.opentelemetry.io/collector/consumer from 0.82.0 to 0.83.0 in
/exporter/opencensusexporter
Bump go.opentelemetry.io/collector/consumer from 0.82.0 to 0.83.0 in
/processor/logstransformprocessor
Bump go.opentelemetry.io/collector/consumer from 0.82.0 to 0.83.0 in
/processor/resourcedetectionprocessor
Bump go.opentelemetry.io/collector/consumer from 0.82.0 to 0.83.0 in
/receiver/mysqlreceiver
Bump go.opentelemetry.io/collector/consumer from 0.82.0 to 0.83.0 in
/receiver/nsxtreceiver
Bump go.opentelemetry.io/collector/processor from 0.82.0 to 0.83.0 in
/exporter/datadogexporter
Bump go.opentelemetry.io/collector/receiver from 0.82.0 to 0.83.0 in
/receiver/dockerstatsreceiver
Bump go.opentelemetry.io/collector/receiver from 0.82.0 to 0.83.0 in
/receiver/googlecloudpubsubreceiver
Bump go.opentelemetry.io/collector/semconv from 0.82.0 to 0.83.0 in
/exporter/awsemfexporter
Bump go.opentelemetry.io/collector/semconv from 0.82.0 to 0.83.0 in
/receiver/hostmetricsreceiver
The following commands were run to prepare this release:
- make chlog-update VERSION=v0.83.0
- sed -i.bak s/0.82.0/0.83.0/g versions.yaml
- make multimod-prerelease
- make multimod-sync
Followup to the v0.83.0 release.

The chloggen tool was recently upgraded to support multiple separate
changelogs. While the tool worked correctly, several entries were added
prior to the new feature being added, resulting in several entries going
to the default (user) changelog rather than the api changelog.
**Description:** 
related #23266

Signed-off-by: Ziqi Zhao <zhaoziqi9146@gmail.com>
**Description:** 
Moves existing config validation into the Validate function

**Testing:** 
Added more unit tests

---------

Co-authored-by: Dmitrii Anoshin <anoshindx@gmail.com>
…5826)

[![Mend
Renovate](https://app.renovatebot.com/images/banner.svg)](https://renovatebot.com)

This PR contains the following updates:

| Package | Update | Change |
|---|---|---|
|
[otel/opentelemetry-collector-contrib](https://togithub.com/open-telemetry/opentelemetry-collector-releases)
| minor | `0.82.0` -> `0.83.0` |

---

### Release Notes

<details>
<summary>open-telemetry/opentelemetry-collector-releases
(otel/opentelemetry-collector-contrib)</summary>

###
[`v0.83.0`](https://togithub.com/open-telemetry/opentelemetry-collector-releases/releases/tag/v0.83.0)

[Compare
Source](https://togithub.com/open-telemetry/opentelemetry-collector-releases/compare/v0.82.0...v0.83.0)

#### Changelog

-
[`66a5e00`](https://togithub.com/open-telemetry/opentelemetry-collector-releases/commit/66a5e00)
Prep release v0.83.0
([#&#8203;388](https://togithub.com/open-telemetry/opentelemetry-collector-releases/issues/388))
-
[`8eb6a21`](https://togithub.com/open-telemetry/opentelemetry-collector-releases/commit/8eb6a21)
Bump github.com/goreleaser/goreleaser from 1.19.2 to 1.20.0
([#&#8203;387](https://togithub.com/open-telemetry/opentelemetry-collector-releases/issues/387))
-
[`9157d9d`](https://togithub.com/open-telemetry/opentelemetry-collector-releases/commit/9157d9d)
\[admin] Add criteria for distributions
([#&#8203;376](https://togithub.com/open-telemetry/opentelemetry-collector-releases/issues/376))

</details>

---

### Configuration

📅 **Schedule**: Branch creation - "on tuesday" (UTC), Automerge - At any
time (no schedule defined).

🚦 **Automerge**: Disabled by config. Please merge this manually once you
are satisfied.

♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the
rebase/retry checkbox.

🔕 **Ignore**: Close this PR and you won't be reminded about this update
again.

---

- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check
this box

---

This PR has been generated by [Mend
Renovate](https://www.mend.io/free-developer-tools/renovate/). View
repository job log
[here](https://developer.mend.io/github/open-telemetry/opentelemetry-collector-contrib).

<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNi40My4yIiwidXBkYXRlZEluVmVyIjoiMzYuNDMuMiIsInRhcmdldEJyYW5jaCI6Im1haW4ifQ==-->
Add precision=n and precision=u to line protocol endpoint handler. This
explicitly matches the behavior of InfluxDB 1.11, and allows a certain
[Java
client](https://github.com/influxdata/influxdb-java/blob/master/src/main/java/org/influxdb/impl/TimeUtil.java#L63)
to write to OpenTelemetry.

Also adds precision=µ and precision=µs for more complete compatibility
with github.com/influxdata/line-protocol .
**Description:** Added new metric -- `postgresql.deadlocks` -- number of
deadlocks detected in a database.

**Link to tracking Issue:**
#25688
The code was introduced to migrate table and database datapoint
attributes to resource attributes in
#12967.
Migration was completed a long time ago. The custom code isn't needed
anymore. This also fixed the documentation to match the emitted data and
removes redundant testdata
opentelemetrybot and others added 29 commits August 24, 2023 12:25
**Description:** 
related #23266

Signed-off-by: Ziqi Zhao <zhaoziqi9146@gmail.com>
Co-authored-by: Alex Boten <aboten@lightstep.com>
…ay Exporter (#26041)

Currently, the AWS XRay Exporter will drop segments/traces with trace
IDs where the first 32 bits, when converted to UNIX Epoch time, are not
within the past 28 days. This change is to add an Alpha feature gate
`exporter.awsxray.skiptimestampvalidation`, which is disabled by
default. If enabled, the timestamp restriction is removed so that users
do not need to use the AWS XRay ID Generator.

- Updated unit test in `config_test.go` 
- Added unit tests in `factory_test.go` and `segment_test.go`
- All other unit tests related to trace ID are passing.
Added new metric `postgresql.time_files` which is
number of temp files detected in a database.

Fixes #26080
Rely on the scraper helper's Timeout instead

---------

Signed-off-by: Alex Boten <aboten@lightstep.com>
Upgrade dataset-go from 0.12.1 to 0.14.0

Next release is happening on 2023-08-28 (Monday) -
https://github.com/open-telemetry/opentelemetry-collector/blob/main/docs/release.md
- but next dependant is running on 2023-08-31 (Wednesday) -
https://github.com/open-telemetry/opentelemetry-collector-contrib/blob/main/.github/dependabot.yml
- so it will not get updated on time.
)

Added new attributes: name, type and resource group to the metrics
**Description:** Adding myself as a codeowner of AWS EMF Exporter
… otel_scope_info (#25898)

**Description:**

Implements this specification:
https://github.com/open-telemetry/opentelemetry-specification/blob/main/specification/compatibility/prometheus_and_openmetrics.md#instrumentation-scope,
with
open-telemetry/opentelemetry-specification#3660

Instrumentation Scope

> Each otel_scope_info metric point present in a batch of metrics SHOULD
be dropped from the incoming scrape, and converted to an instrumentation
scope. The otel_scope_name and otel_scope_version labels, if present,
MUST be converted to the Name and Version of the Instrumentation Scope.
Additional labels MUST be added as scope attributes, with keys and
values unaltered. Other metrics in the batch which have otel_scope_name
and otel_scope_version labels that match an instrumentation scope MUST
be placed within the matching instrumentation scope, and MUST remove
those labels.

> Metrics which are not found to be associated with an instrumentation
scope MUST all be placed within an empty instrumentation scope, and MUST
not have any labels removed.

It does this by:

* For all metrics, use `otel_scope_name` and `otel_scope_version` to set
the scope name and version.
* For `otel_scope_info` metrics, use `otel_scope_name` and
`otel_scope_version` as the scope name and version, and all other labels
(other than `job`/`instance`/`__name__`) as scope attributes.
* Change `map[metricName]metricFamily` to
`map[scope][metricName]metricFamily` to sort metrics by instrumentation
scope as they come in, and to make writing the scope easier on commit.

**Link to tracking Issue:**
Fixes
#25870
Most remote sampling code is already removed from the jaeger receiver
via #6633, but the configuration is still there. It is unused and should
be removed.

The only reason I can think of for retaining it is so that old
configuration files don't stop the Collector from running. However,
given that this is a no-op, I think it would be better to have an error
and let the customers reconfigure their collectors. Here, I'm assuming
that configuring a struct which doesn't exist will indeed raise an
error.

There is no changelog entry since the change is mostly an implementation
detail.

---------

Co-authored-by: Juraci Paixão Kröhling <juraci.github@kroehling.de>
**Description:** 
related #23266

Signed-off-by: Ziqi Zhao <zhaoziqi9146@gmail.com>
Description: Allows conversion of durations to nanoseconds,
microseconds, milliseconds, seconds, minutes or hours

Link to tracking Issue: 
Related to #24686 

Testing: Unit tests for each converter

Documentation:

---------

Co-authored-by: Tyler Helmuth <12352919+TylerHelmuth@users.noreply.github.com>
**Description:** 
related #23266

Signed-off-by: Ziqi Zhao <zhaoziqi9146@gmail.com>
TImeout increased to 30m

**Link to tracking Issue:** #25875
**Description:** 
The timeout of snmp requests was hard coded to 5 seconds. This commit
adds timeout to the configuration of this receiver. The timeout can now
be set using the timeout key at the higest level in the configuration.
The default is left at 5 seconds.

**Link to tracking Issue:** 
#25885

**Testing:** 
Updated `TestNewFactory` method to reflect new default config.
Ran receiver against devices demanding a high timeout. During testing
added extra logging statements to check if timeout setting was
propagated correctly to the underlying SNMP library and if it was
reflected in the SNMP commands executed. Tests succeeded. Removed extra
logging statements as we shouldn't create a log per datapoint received
in production.

**Documentation:** 
Added the new config option `timeout` to README.
Add that this component is now shipping as part of the Splunk
distribution.
…ob (#26125)

To restore the main build and unblock the release

Updates
#26124
…adme (#26242)

**Description:** <Describe what has changed.>
The zone `us-east-1` is not a valid GCP zone, which causes writing
metrics with this example processor to fail. `us-east-1` is the AWS
region, which means `aws:us-east-1` would work, but this PR changes this
to the GCP equivalent `us-east1`.
**Description:** <Describe what has changed.>
<!--Ex. Fixing a bug - Describe the bug and how this fixes the issue.
Ex. Adding a feature - Explain what this achieves.-->
There was a breaking change in this upgrade that needed to be handled
manually. The fix is to replace usages of ConfigMapsLeasesResourceLock
with LeasesResourceLock.

To do the deps updates I did the following:
``` 
cd internal/aws/k8s/
go get -u k8s.io/client-go@v0.28.1
cd ../../kubelet/
go get -u k8s.io/client-go@v0.28.1
```
These directories correspond to the two PRs that were closed because of
the original issue.
Original PRs: #26010, and #26156.

This doesn't update all packages to use v0.28.1, so let me know if I
should update to include all others as well.

**Link to tracking Issue:** <Issue number if applicable>
Fixes #26024

**Testing:** <Describe what testing was performed and which tests were
added.>
Build completes successfully now

**Documentation:** <Describe the documentation added.>
…unit test (#26240)

**Description:**

Fixes
#26123

It sorts scopes before checking them.
Use the Timeout setting from ScraperHelper instead

---------

Signed-off-by: Alex Boten <aboten@lightstep.com>
Update googlecloud dependency from v0.42.0 to v0.43.0. See the full set
of changes here:
https://github.com/GoogleCloudPlatform/opentelemetry-operations-go/releases/tag/v0.43.0

I refactored the API surface of the googlemanagedprometheus package to
minimize future breaking changes in
GoogleCloudPlatform/opentelemetry-operations-go#709.
This created a Config struct in that package with configuration options
for functions in the package. It is backwards-compatible with the
configuration currently in the googlemanagedprometheus exporter, but
adds a new option `add_metric_suffixes`.

This also removes the deprecated BuildPromCompliantName now that the
googlemanagedprometheus library has migrated to the new function.

**Testing:**

Expanded config unit test to cover all fields.

**Documentation:**

Updated the README with new `add_metric_suffixes` configuration. This
configuration matches the configuration used by the prometheus remote
write and prometheus exporters.
Signed-off-by: Alex Boten <aboten@lightstep.com>
#26119)

Add support for SNMP obecjts of type counter64. The gosnmp library
already has support for this type.
And we already cast all numerical values to an int64.
Added new metric -- `postgresql.sequential_scans`, the number of sequential scans initiated on a table.
…ave scalar OID attributes (#25174)

**Description:** <Describe what has changed.>
- Added a new scalar_oid field to ResourceAttribtueConfigs to allow
Scalar OIDs to be used as resource attributes (on Column OID metrics)
- Added support for (Scalar OID only) resource attributes on Scalar OID
metrics as well.

**Link to tracking Issue:** 

#23373

**Testing:** 
- Valid and invalid configs using a scalar_oid resource attribute on
both scalar and column oid metrics
- Adding indexed metrics to resources with scalar_oid resource
attributes
- Adding scalar metrics to resources with scalar_oid resource attributes

**Documentation:** <Describe the documentation added.>
- Description of new scalar_oid field in ResourceAttributeConfig and
comments on new functions
- Description of new ResourceAttributes field on Scalar OID metrics
**Description:** 
I'm adding this for readability and convenience - it seems reasonable
and intuitive to be able to jump to operator docs from that place.
@cparkins cparkins merged commit b0056fa into AmadeusITGroup:main Aug 29, 2023
2 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.