Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 3 additions & 1 deletion .github/workflows/ci-base.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -64,6 +64,8 @@ jobs:
with:
fetch-depth: 0 # required for tag metadata

- run: ./scripts/free-disk-space.sh

- name: Setup Go
uses: actions/setup-go@v5
with:
Expand Down Expand Up @@ -235,7 +237,7 @@ jobs:
version: "2.11.2"
args: ${{ env.goreleaser_args }}
workdir: distributions/${{ inputs.distribution }}

- name: Skip GoReleaser build (cached)
if: steps.cache-goreleaser.outputs.cache-hit == 'true'
run: echo "✅ GoReleaser build skipped - using cached binaries"
Expand Down
1 change: 1 addition & 0 deletions distributions/nrdot-collector/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -16,6 +16,7 @@ Note: See [general README](../README.md) for information that applies to all dis
|-----------------------|-----------|---------------------------|---------------|
| Host Monitoring (default) | `public` | `nrdot-collector-host` | [See 'Host Monitoring' below](#host-monitoring) |
| Gateway Mode | `alpha` | N/A (new) | [See 'Gateway Mode' below](#gateway-mode) |
| On-Host Integrations (OHI) | `alpha` | N/A (new) | Coming Soon |

Note: While it's technically possible to have a single collector serve multiple use cases at the same time, we generally do not recommend or support this pattern due to the operational complexity that comes with it (configuration, deployment, scaling, ...). Instead we recommend deploying one collector per use case and chain them as necessary. Please note that when we say 'one collector' we refer to a logical service, not a single instance, i.e. you should still employ common scaling practices to ensure your architecture is resilient.

Expand Down
96 changes: 96 additions & 0 deletions distributions/nrdot-collector/THIRD_PARTY_NOTICES.md
Original file line number Diff line number Diff line change
Expand Up @@ -36,6 +36,30 @@ Distributed under the following license(s):



## [github.com/open-telemetry/opentelemetry-collector-contrib/extension/observer/dockerobserver](https://github.com/open-telemetry/opentelemetry-collector-contrib)

Distributed under the following license(s):

* Apache-2.0



## [github.com/open-telemetry/opentelemetry-collector-contrib/extension/observer/hostobserver](https://github.com/open-telemetry/opentelemetry-collector-contrib)

Distributed under the following license(s):

* Apache-2.0



## [github.com/open-telemetry/opentelemetry-collector-contrib/extension/observer/k8sobserver](https://github.com/open-telemetry/opentelemetry-collector-contrib)

Distributed under the following license(s):

* Apache-2.0



## [github.com/open-telemetry/opentelemetry-collector-contrib/processor/attributesprocessor](https://github.com/open-telemetry/opentelemetry-collector-contrib)

Distributed under the following license(s):
Expand Down Expand Up @@ -116,6 +140,22 @@ Distributed under the following license(s):



## [github.com/open-telemetry/opentelemetry-collector-contrib/receiver/dockerstatsreceiver](https://github.com/open-telemetry/opentelemetry-collector-contrib)

Distributed under the following license(s):

* Apache-2.0



## [github.com/open-telemetry/opentelemetry-collector-contrib/receiver/elasticsearchreceiver](https://github.com/open-telemetry/opentelemetry-collector-contrib)

Distributed under the following license(s):

* Apache-2.0



## [github.com/open-telemetry/opentelemetry-collector-contrib/receiver/filelogreceiver](https://github.com/open-telemetry/opentelemetry-collector-contrib)

Distributed under the following license(s):
Expand All @@ -132,6 +172,46 @@ Distributed under the following license(s):



## [github.com/open-telemetry/opentelemetry-collector-contrib/receiver/jmxreceiver](https://github.com/open-telemetry/opentelemetry-collector-contrib)

Distributed under the following license(s):

* Apache-2.0



## [github.com/open-telemetry/opentelemetry-collector-contrib/receiver/k8seventsreceiver](https://github.com/open-telemetry/opentelemetry-collector-contrib)

Distributed under the following license(s):

* Apache-2.0



## [github.com/open-telemetry/opentelemetry-collector-contrib/receiver/kafkametricsreceiver](https://github.com/open-telemetry/opentelemetry-collector-contrib)

Distributed under the following license(s):

* Apache-2.0



## [github.com/open-telemetry/opentelemetry-collector-contrib/receiver/kubeletstatsreceiver](https://github.com/open-telemetry/opentelemetry-collector-contrib)

Distributed under the following license(s):

* Apache-2.0



## [github.com/open-telemetry/opentelemetry-collector-contrib/receiver/nginxreceiver](https://github.com/open-telemetry/opentelemetry-collector-contrib)

Distributed under the following license(s):

* Apache-2.0



## [github.com/open-telemetry/opentelemetry-collector-contrib/receiver/prometheusreceiver](https://github.com/open-telemetry/opentelemetry-collector-contrib)

Distributed under the following license(s):
Expand All @@ -140,6 +220,22 @@ Distributed under the following license(s):



## [github.com/open-telemetry/opentelemetry-collector-contrib/receiver/rabbitmqreceiver](https://github.com/open-telemetry/opentelemetry-collector-contrib)

Distributed under the following license(s):

* Apache-2.0



## [github.com/open-telemetry/opentelemetry-collector-contrib/receiver/receivercreator](https://github.com/open-telemetry/opentelemetry-collector-contrib)

Distributed under the following license(s):

* Apache-2.0



## [go.opentelemetry.io/collector/component](https://go.opentelemetry.io/collector/component)

Distributed under the following license(s):
Expand Down
78 changes: 78 additions & 0 deletions distributions/nrdot-collector/component-inventory.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,78 @@
# Component Inventory

This document maps each component in the `nrdot-collector` distribution to the use cases that require it. As use cases might evolve and begin to use components that are already present in the distro, this list might become stale and need updating, so it's not meant to be an authoritative source but best-effort context for maintainers.

**Legend:**
- **Core**: Core (not use-case specific)
- **Host**: Host Monitoring
- **Gateway**: Gateway Mode
- **OHI**: On-Host Integrations

## Receivers

| Component | Use Cases |
|-----------|-----------|
| `dockerstatsreceiver` | OHI |
| `elasticsearchreceiver` | OHI |
| `filelogreceiver` | Host |
| `hostmetricsreceiver` | Host, OHI |
| `jmxreceiver` | OHI |
| `k8seventsreceiver` | OHI |
| `kafkametricsreceiver` | OHI |
| `kubeletstatsreceiver` | OHI |
| `nginxreceiver` | OHI |
| `otlpreceiver` | Core |
| `prometheusreceiver` | Gateway |
| `rabbitmqreceiver` | OHI |
| `receivercreator` | OHI |

## Processors

| Component | Use Cases |
|-----------|-----------|
| `attributesprocessor` | Core |
| `batchprocessor` | Core |
| `cumulativetodeltaprocessor` | Core |
| `filterprocessor` | Core |
| `groupbyattrsprocessor` | Gateway |
| `memorylimiterprocessor` | Core |
| `metricstransformprocessor` | Core |
| `resourcedetectionprocessor` | Core |
| `resourceprocessor` | Gateway |
| `spanprocessor` | Gateway |
| `tailsamplingprocessor` | Gateway |
| `transformprocessor` | Core |

## Exporters

| Component | Use Cases |
|-----------|-----------|
| `debugexporter` | Core |
| `loadbalancingexporter` | Gateway |
| `otlpexporter` | Core |
| `otlphttpexporter` | Core |

## Connectors

| Component | Use Cases |
|-----------|-----------|
| `routingconnector` | Core |

## Extensions

| Component | Use Cases |
|-----------|-----------|
| `healthcheckextension` | Core |
| `observer/dockerobserver` | OHI |
| `observer/hostobserver` | OHI |
| `observer/k8sobserver` | OHI |

## Providers

| Component | Use Cases |
|-----------|-----------|
| `envprovider` | Core |
| `fileprovider` | Core |
| `httpprovider` | Core |
| `httpsprovider` | Core |
| `yamlprovider` | Core |
12 changes: 12 additions & 0 deletions distributions/nrdot-collector/manifest.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -6,9 +6,18 @@ dist:
output_path: ./_build
receivers:
- gomod: go.opentelemetry.io/collector/receiver/otlpreceiver v0.142.0
- gomod: github.com/open-telemetry/opentelemetry-collector-contrib/receiver/dockerstatsreceiver v0.142.0
- gomod: github.com/open-telemetry/opentelemetry-collector-contrib/receiver/elasticsearchreceiver v0.142.0
- gomod: github.com/open-telemetry/opentelemetry-collector-contrib/receiver/filelogreceiver v0.142.0
- gomod: github.com/open-telemetry/opentelemetry-collector-contrib/receiver/hostmetricsreceiver v0.142.0
- gomod: github.com/open-telemetry/opentelemetry-collector-contrib/receiver/jmxreceiver v0.142.0
- gomod: github.com/open-telemetry/opentelemetry-collector-contrib/receiver/k8seventsreceiver v0.142.0
- gomod: github.com/open-telemetry/opentelemetry-collector-contrib/receiver/kafkametricsreceiver v0.142.0
- gomod: github.com/open-telemetry/opentelemetry-collector-contrib/receiver/kubeletstatsreceiver v0.142.0
- gomod: github.com/open-telemetry/opentelemetry-collector-contrib/receiver/nginxreceiver v0.142.0
- gomod: github.com/open-telemetry/opentelemetry-collector-contrib/receiver/prometheusreceiver v0.142.0
- gomod: github.com/open-telemetry/opentelemetry-collector-contrib/receiver/rabbitmqreceiver v0.142.0
- gomod: github.com/open-telemetry/opentelemetry-collector-contrib/receiver/receivercreator v0.142.0
processors:
- gomod: go.opentelemetry.io/collector/processor/batchprocessor v0.142.0
- gomod: go.opentelemetry.io/collector/processor/memorylimiterprocessor v0.142.0
Expand All @@ -31,6 +40,9 @@ connectors:
- gomod: github.com/open-telemetry/opentelemetry-collector-contrib/connector/routingconnector v0.142.0
extensions:
- gomod: github.com/open-telemetry/opentelemetry-collector-contrib/extension/healthcheckextension v0.142.0
- gomod: github.com/open-telemetry/opentelemetry-collector-contrib/extension/observer/dockerobserver v0.142.0
- gomod: github.com/open-telemetry/opentelemetry-collector-contrib/extension/observer/hostobserver v0.142.0
- gomod: github.com/open-telemetry/opentelemetry-collector-contrib/extension/observer/k8sobserver v0.142.0
providers:
- gomod: go.opentelemetry.io/collector/confmap/provider/envprovider v1.48.0
- gomod: go.opentelemetry.io/collector/confmap/provider/fileprovider v1.48.0
Expand Down
17 changes: 17 additions & 0 deletions scripts/free-disk-space.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@
#!/usr/bin/env bash
#
# Copyright The OpenTelemetry Authors
# SPDX-License-Identifier: Apache-2.0

echo "Available disk space before:"
df -h /

# The Android SDK is the biggest culprit for the lack of disk space in CI.
# It is installed into /usr/local/lib/android manually (ie. not with apt) by this script:
# https://github.com/actions/runner-images/blob/main/images/ubuntu/scripts/build/install-android-sdk.sh
# so let's delete the directory manually.
echo "Deleting unused Android SDK and tools..."
sudo rm -rf /usr/local/lib/android

echo "Available disk space after:"
df -h /
Loading