Skip to content

Commit

Permalink
Merge remote-tracking branch 'origin/main' into no-bail-on-error
Browse files Browse the repository at this point in the history
  • Loading branch information
dyladan committed Apr 15, 2022
2 parents 6356e8a + c7fe9fd commit d6f59bf
Show file tree
Hide file tree
Showing 1,289 changed files with 38,470 additions and 22,261 deletions.
3 changes: 2 additions & 1 deletion .github/CODEOWNERS
Validating CODEOWNERS rules …
Original file line number Diff line number Diff line change
Expand Up @@ -52,7 +52,6 @@ exporter/sentryexporter/ @open-telemetry/collector-c
exporter/signalfxexporter/ @open-telemetry/collector-contrib-approvers @pmcollins @dmitryax
exporter/skywalkingexporter/ @open-telemetry/collector-contrib-approvers @liqiangz
exporter/splunkhecexporter/ @open-telemetry/collector-contrib-approvers @atoulme @dmitryax
exporter/stackdriverexporter/ @open-telemetry/collector-contrib-approvers @aabmass @dashpole @jsuereth @punya @tbarker25
exporter/sumologicexporter/ @open-telemetry/collector-contrib-approvers @pmm-sumo @sumo-drosiek
exporter/tanzuobservabilityexporter/ @open-telemetry/collector-contrib-approvers @oppegard @thepeterstone @keep94
exporter/tencentcloudlogserviceexporter/ @open-telemetry/collector-contrib-approvers @wgliang @yiyang5055
Expand Down Expand Up @@ -125,6 +124,7 @@ receiver/googlecloudpubsubreceiver/ @open-telemetry/collector-c
receiver/googlecloudspannerreceiver/ @open-telemetry/collector-contrib-approvers @ydrozhdzhal @asukhyy @khospodarysko @architjugran
receiver/hostmetricsreceiver @open-telemetry/collector-contrib-approvers @dmitryax
receiver/influxdbreceiver/ @open-telemetry/collector-contrib-approvers @jacobmarble
receiver/iisreceiver/ @open-telemetry/collector-contrib-approvers @mrod1598 @djaglowski
receiver/jaegerreceiver/ @open-telemetry/collector-contrib-approvers @jpkrohling
receiver/jmxreceiver/ @open-telemetry/collector-contrib-approvers @rmfitzpatrick
receiver/journaldreceiver/ @open-telemetry/collector-contrib-approvers @pmm-sumo
Expand All @@ -144,6 +144,7 @@ receiver/prometheusreceiver/ @open-telemetry/collector-c
receiver/rabbitmqreceiver/ @open-telemetry/collector-contrib-approvers @djaglowski @cpheps
receiver/receivercreator/ @open-telemetry/collector-contrib-approvers @jrcamp
receiver/redisreceiver/ @open-telemetry/collector-contrib-approvers @pmcollins @dmitryax
receiver/riakreceiver/ @open-telemetry/collector-contrib-approvers @djaglowski @armstrmi
receiver/sapmreceiver/ @open-telemetry/collector-contrib-approvers @owais
receiver/signalfxreceiver/ @open-telemetry/collector-contrib-approvers @pjanotti @dmitryax
receiver/skywalkingreceiver @open-telemetry/collector-contrib-approvers @JaredTan95
Expand Down
4 changes: 0 additions & 4 deletions .github/dependabot.yml
Original file line number Diff line number Diff line change
Expand Up @@ -182,10 +182,6 @@ updates:
directory: "/exporter/splunkhecexporter"
schedule:
interval: "weekly"
- package-ecosystem: "gomod"
directory: "/exporter/stackdriverexporter"
schedule:
interval: "weekly"
- package-ecosystem: "gomod"
directory: "/exporter/sumologicexporter"
schedule:
Expand Down
4 changes: 4 additions & 0 deletions .github/workflows/build-and-test-windows.yml
Original file line number Diff line number Diff line change
Expand Up @@ -14,6 +14,10 @@ jobs:
steps:
- name: Checkout Repo
uses: actions/checkout@v3
- name: install iis
run: Install-WindowsFeature -name Web-Server -IncludeManagementTools
- name: Install SQL Server 2019 Dev
run: ./.github/workflows/scripts/sqlserver_install.ps1
- name: Setup Go
uses: actions/setup-go@v3
with:
Expand Down
26 changes: 17 additions & 9 deletions .github/workflows/build-and-test.yml
Original file line number Diff line number Diff line change
Expand Up @@ -41,6 +41,14 @@ jobs:
- name: Install Tools
if: steps.tool-cache.outputs.cache-hit != 'true'
run: make install-tools
check-collector-module-version:
runs-on: ubuntu-latest
needs: [setup-environment]
steps:
- name: Checkout Repo
uses: actions/checkout@v2
- name: Check Collector Module Version
run: ./.github/workflows/scripts/check-collector-module-version.sh
lint:
runs-on: ubuntu-latest
needs: [setup-environment]
Expand Down Expand Up @@ -286,7 +294,7 @@ jobs:
- name: Build Collector ${{ matrix.binary }}
run: make otelcontribcol-${{ matrix.binary }}
- name: Upload Collector Binaries
uses: actions/upload-artifact@v2
uses: actions/upload-artifact@v3
with:
name: collector-binaries
path: ./bin/*
Expand All @@ -310,7 +318,7 @@ jobs:
- name: Install fpm
run: gem install --no-document fpm -v 1.11.0
- name: Download Collector Binaries
uses: actions/download-artifact@v2
uses: actions/download-artifact@v3
with:
name: collector-binaries
path: bin/
Expand All @@ -330,7 +338,7 @@ jobs:
./internal/buildscripts/packaging/fpm/test.sh dist/otel-contrib-collector*x86_64.rpm examples/tracing/otel-collector-config.yml
fi
- name: Upload Packages
uses: actions/upload-artifact@v2
uses: actions/upload-artifact@v3
with:
name: collector-packages
path: ./dist/*
Expand All @@ -343,7 +351,7 @@ jobs:
with:
fetch-depth: 0
- name: Download Binaries
uses: actions/download-artifact@v2
uses: actions/download-artifact@v3
with:
name: collector-binaries
path: ./bin/
Expand All @@ -365,7 +373,7 @@ jobs:
- name: Validate MSI
run: .\internal\buildscripts\packaging\msi\make.ps1 Confirm-MSI
- name: Upload MSI
uses: actions/upload-artifact@v2
uses: actions/upload-artifact@v3
with:
name: collector-packages
path: ./dist/*.msi
Expand All @@ -377,11 +385,11 @@ jobs:
- name: Checkout Repo
uses: actions/checkout@v3
- name: Download Binaries
uses: actions/download-artifact@v2
uses: actions/download-artifact@v3
with:
name: collector-binaries
- name: Download Packages
uses: actions/download-artifact@v2
uses: actions/download-artifact@v3
with:
name: collector-packages
path: ./dist/
Expand Down Expand Up @@ -411,13 +419,13 @@ jobs:
path: /home/runner/go/bin
key: v1-tools-${{ runner.os }}-${{ hashFiles('./internal/tools/go.mod') }}
- name: Download Binaries
uses: actions/download-artifact@v2
uses: actions/download-artifact@v3
with:
name: collector-binaries
path: ./bin/
- run: chmod +x bin/*
- name: Download Packages
uses: actions/download-artifact@v2
uses: actions/download-artifact@v3
with:
name: collector-packages
path: ./dist/
Expand Down
6 changes: 3 additions & 3 deletions .github/workflows/load-tests.yml
Original file line number Diff line number Diff line change
Expand Up @@ -48,7 +48,7 @@ jobs:
run: make install-tools
- run: make otelcontribcol
- name: Upload Collector Binaries
uses: actions/upload-artifact@v2
uses: actions/upload-artifact@v3
with:
name: collector-binaries
path: ./bin/*
Expand Down Expand Up @@ -108,7 +108,7 @@ jobs:
key: v1-go-pkg-mod-${{ runner.os }}-${{ hashFiles('**/go.mod', '**/go.sum') }}
- run: mkdir -p results && touch results/TESTRESULTS.md
- name: Download Collector Binaries
uses: actions/download-artifact@v2
uses: actions/download-artifact@v3
with:
name: collector-binaries
path: bin/
Expand All @@ -127,7 +127,7 @@ jobs:
- name: Upload Test Results
if: ${{ failure() || success() }}
continue-on-error: true
uses: actions/upload-artifact@v2
uses: actions/upload-artifact@v3
with:
path: ./*.tar
- name: GitHub Issue Generator
Expand Down
82 changes: 82 additions & 0 deletions .github/workflows/scripts/check-collector-module-version.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,82 @@
#!/usr/bin/env bash

# Copyright The OpenTelemetry Authors

# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at

# http://www.apache.org/licenses/LICENSE-2.0

# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.

#
# verifies if the collector components are using the main core collector version
# as a dependency.
#
set -eu -o pipefail

# Return the collector main core version
get_collector_version() {
collector_module="$1"
main_mod_file="$2"

if grep -q "$collector_module" "$main_mod_file"; then
grep "$collector_module" "$main_mod_file" | (read mod version;
echo $version)
else
echo "Error: failed to retrieve the \"$collector_module\" version from \"$main_mod_file\"."
exit 1
fi
}

# Compare the collector main core version against all the collector component
# modules to verify that they are using this version as its dependency
check_collector_versions_correct() {
collector_module="$1"
collector_mod_version="$2"
incorrect_version=0
mod_files=$(find . -type f -name "go.mod")

# Loop through all the module files, checking the collector version
for mod_file in $mod_files; do
if grep -q "$collector_module" "$mod_file"; then
mod_line=$(grep "$collector_module" "$mod_file")
version=$(echo "$mod_line" | cut -d" " -f2)

# To account for a module on its own 'require' line,
# the version field is shifted right by 1
if [ "$version" == "$collector_module" ]; then
version=$(echo "$mod_line" | cut -d" " -f3)
fi

if [ "$version" != "$collector_mod_version" ]; then
incorrect_version=$((incorrect_version+1))
echo "Incorrect version \"$version\" of \"$collector_module\" is included in \"$mod_file\". It should be version \"$collector_mod_version\"."
fi
fi
done

echo "There are $incorrect_version incorrect \"$collector_module\" version(s) in the module files."
if [ "$incorrect_version" -gt 0 ]; then
exit 1
fi
}

# Note space at end of string. This is so it filters for the exact string
# only and does not return string which contains this string as a substring.
COLLECTOR_MODULE="go.opentelemetry.io/collector "

COLLECTOR_MODEL_MODULE="go.opentelemetry.io/collector/model"
MAIN_MOD_FILE="./go.mod"
COLLECTOR_MOD_VERSION=$(get_collector_version "$COLLECTOR_MODULE" "$MAIN_MOD_FILE")

# Check the collector module version in each of the module files
check_collector_versions_correct "$COLLECTOR_MODULE" "$COLLECTOR_MOD_VERSION"

# Check the collector model module version in each of the module files
check_collector_versions_correct "$COLLECTOR_MODEL_MODULE" "$COLLECTOR_MOD_VERSION"
13 changes: 13 additions & 0 deletions .github/workflows/scripts/sqlserver_install.ps1
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
function Install-SQLServer2019 {
Write-Host "Downloading SQL Server 2019..."
$Path = $env:TEMP
$Installer = "SQL2019-SSEI-Dev.exe"
$URL = "https://go.microsoft.com/fwlink/?linkid=866662"
Invoke-WebRequest $URL -OutFile $Path\$Installer

Write-Host "Installing SQL Server..."
Start-Process -FilePath $Path\$Installer -Args "/ACTION=INSTALL /IACCEPTSQLSERVERLICENSETERMS /QUIET" -Verb RunAs -Wait
Remove-Item $Path\$Installer
}

Install-SQLServer2019
2 changes: 1 addition & 1 deletion .github/workflows/stability-tests.yml
Original file line number Diff line number Diff line change
Expand Up @@ -89,7 +89,7 @@ jobs:
- name: Upload Test Results
if: ${{ success() }}
continue-on-error: true
uses: actions/upload-artifact@v2
uses: actions/upload-artifact@v3
with:
name: stability-test-results
path: stabilitytest_results.tar
2 changes: 1 addition & 1 deletion .github/workflows/stale-pr.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@ jobs:
stale:
runs-on: ubuntu-latest
steps:
- uses: actions/stale@v4
- uses: actions/stale@v5
with:
repo-token: ${{ secrets.GITHUB_TOKEN }}
stale-pr-message: 'This PR was marked stale due to lack of activity. It will be closed in 14 days.'
Expand Down
65 changes: 52 additions & 13 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,37 +2,76 @@

## Unreleased

### 🛑 Breaking changes 🛑

- `stackdriverexporter`: Remove the stackdriver exporter in favor of the identical googlecloud exporter (#9274)

### 🚩 Deprecations 🚩

### 🚀 New components 🚀

- `iisreceiver`: Add implementation of IIS Metric Receiver (#8832)
- `sqlserverreceiver`: Add implementation of SQL Server Metric Receiver (#8398)

### 💡 Enhancements 💡

- `tanzuobservabilityexporter`: Use resourcetotelemetry helper (#8338)
- `cmd/mdatagen`: Add resource attributes definition to metadata.yaml and move `pdata.Metrics` creation to the
generated code (#5270)
- Add `make crosslink` target to ensure replace statements are included in `go.mod` for all transitive dependencies within repository (#8822)
- `filestorageextension`: Change bbolt DB settings for better performance (#9004)
### 🧰 Bug fixes 🧰

## v0.49.0

### 🛑 Breaking changes 🛑

- `filelogreceiver`, `journaldreceiver`, `syslogreceiver`, `tcplogreceiver`, `udplogreceiver`:
- Updated data model to align with stable logs data model, which includes various breaking changes. (#8835)
- A detailed [Upgrade Guide](https://github.com/open-telemetry/opentelemetry-log-collection/releases/tag/v0.28.0) is available in the log-collection v0.28.0 release notes.
- Updated data model to align with stable logs data model, which includes various breaking changes. (#9139, #8835)
- A detailed [Upgrade Guide](https://github.com/open-telemetry/opentelemetry-log-collection/releases/tag/v0.28.0) is available in the log-collection v0.29.0 release notes.
- `datadogexporter`: Remove `OnlyMetadata` method from `Config` struct (#8980)
- `datadogexporter`: Remove `GetCensoredKey` method from `APIConfig` struct (#8980)

### 🧰 Bug fixes 🧰

- `hostmetricsreceiver`: Use cpu times for time delta in cpu.utilization calculation (#8856)
- `dynatraceexporter`: Remove overly verbose stacktrace from certain logs (#8989)
- `mongodbatlasreceiver`: Updated to uses newer metric builder which changed some metric and resource attributes (#9093)
- `dynatraceexporter`: Make `serialization` package `/internal` (#9097)
- `attributesprocessor`: Remove log names from filters (#9131)

### 🚩 Deprecations 🚩

- `datadogexporter`: Deprecate `service` setting in favor of `service.name` semantic convention (#8784)
- `datadogexporter`: Deprecate `version` setting in favor of `service.version` semantic convention (#8784)
- `datadogexporter`: Deprecate `env` setting in favor of `deployment.environment` semantic convention (#9017)
- `datadogexporter`: Deprecate `GetHostTags` method from `TagsConfig` struct (#8975)
- `datadogexporter`: Deprecate `tags` setting in favor of `host_metadata::tags` (#9100)
- `datadogexporter`: Deprecate `send_metadata` setting in favor of `host_metadata::enabled` (#9100)
- `datadogexporter`: Deprecate `use_resource_metadata` setting in favor of `host_metadata::hostname_source` (#9100)
- `prometheusexecreceiver`: Deprecate prom_exec receiver (#9058)
- `fluentbitextension`: Deprecate Fluentbit extension (#9062)

### 🚀 New components 🚀

- `riakreceiver`: Riak Metric Receiver (#8548)

### 💡 Enhancements 💡
- `splunkhecexporter`: Add support for batching traces (#8995)
- `hostmetricsreceiver`: Migrate Processes scraper to the Metrics builder (#8855)
- `tanzuobservabilityexporter`: Use resourcetotelemetry helper (#8338)
- Add `make crosslink` target to ensure replace statements are included in `go.mod` for all transitive dependencies within repository (#8822)
- `filestorageextension`: Change bbolt DB settings for better performance (#9004)
- `jaegerremotesamplingextension`: Add local and remote sampling stores (#8818)
- `attributesprocessor`: Add support to filter on log body (#8996)
- `prometheusremotewriteexporter`: Translate resource attributes to the target info metric (#8493)
- `prometheusexporter`: Add `job` and `instance` labels to metrics so they can be scraped with `honor_labels: true` (#9115)
- `podmanreceiver`: Add API timeout configuration option (#9014)
- `cmd/mdatagen`: Add `sem_conv_version` field to metadata.yaml that is used to set metrics SchemaURL (#9010)
- `splunkheceporter`: Add an option to disable log or profiling data (#9065)
- `windowsperfcountersreceiver`: Move code into separate package for use in other windowsperfcounter receivers (#9108)
- `datadogexporter`: Add `host_metadata` configuration section to configure host metadata export (#9100)
- `cmd/mdatagen`: Update documentation generated for attributes to list enumerated values and show the "value" that will be visible on metrics when it is different from the attribute key in metadata.yaml (#8983)
- `routingprocessor`: add option to drop resource attribute used for routing (#8990)

### 🧰 Bug fixes 🧰

- `filestorageextension`: use correct bbolt options for compaction (#9134)
- `hostmetricsreceiver`: Use cpu times for time delta in cpu.utilization calculation (#8857)
- `dynatraceexporter`: Remove overly verbose stacktrace from certain logs (#8989)
- `googlecloudexporter`: fix the `exporter.googlecloud.OTLPDirect` fature-gate, which was not applied when the flag was provided (#9116)
- `signalfxexporter`: Fix bug to enable timeouts for correlating traces and metrics (#9101)
- `windowsperfcountersreceiver`: fix exported values being integers instead of doubles (#9138)
- `prometheusreceiver`: Fix issues with relabelling the `job` and `instance` labels. (#8780)

## v0.48.0
Expand All @@ -45,7 +84,7 @@
- `resourcedetectionprocessor`: Add attribute allowlist (#8547)
- `datadogexporter`: Metrics payload data and Sketches payload data will be logged if collector is started in debug mode (#8929)
- `cmd/mdatagen`: Add resource attributes definition to metadata.yaml and move `pdata.Metrics` creation to the
generated code (#5270)
generated code (#8555)

### 🛑 Breaking changes 🛑

Expand Down
1 change: 1 addition & 0 deletions Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -27,6 +27,7 @@ INTEGRATION_TEST_MODULES := \
receiver/nginxreceiver \
receiver/postgresqlreceiver \
receiver/redisreceiver \
receiver/riakreceiver \
receiver/zookeeperreceiver \
extension/observer/dockerobserver

Expand Down
2 changes: 1 addition & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -68,14 +68,14 @@ Approvers ([@open-telemetry/collector-contrib-approvers](https://github.com/orgs

- [Anthony Mirabella](https://github.com/Aneurysm9), AWS
- [Anuraag Agrawal](https://github.com/anuraaga), AWS
- [Daniel Jaglowski](https://github.com/djaglowski), observIQ
- [David Ashpole](https://github.com/dashpole), Google
- [Dmitrii Anoshin](https://github.com/dmitryax), Splunk
- [Pablo Baeyens](https://github.com/mx-psi), DataDog
- [Przemek Maciolek](https://github.com/pmm-sumo), Sumo Logic

Maintainers ([@open-telemetry/collector-contrib-maintainer](https://github.com/orgs/open-telemetry/teams/collector-contrib-maintainer)):

- [Daniel Jaglowski](https://github.com/djaglowski), observIQ
- [Juraci Paixão Kröhling](https://github.com/jpkrohling), Grafana Labs
- [Alex Boten](https://github.com/codeboten), Lightstep
- [Bogdan Drutu](https://github.com/BogdanDrutu), Splunk
Expand Down
Loading

0 comments on commit d6f59bf

Please sign in to comment.