bindplane-otel-collector

module
v1.72.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Mar 5, 2025 License: Apache-2.0

README

Bindplane Logo

The Bindplane Distro for OpenTelemetry Collector (BDOT Collector) is Bindplane’s distribution of the upstream OpenTelemetry Collector. It’s the first distribution to implement the Open Agent Management Protocol (OpAMP) and is designed to be fully managed with Bindplane Telemetry Pipeline. The BDOT Collector is built using the OpenTelemetry Collector Builder.

Get Started!  👉 

Website |  Docs |  How-to Guides |  Feature Guides |  Blog |  OTel Hub |  Slack

Action Status Action Test Status Go Report Card License

Learn how to connect Bindplane Distro for OpenTelemetry Collector to telemetry sources and destinations, and use processors to transform data.

Why Bindplane Distro for OpenTelemetry Collector?

If you're managing telemetry at scale you'll run in to these problems sooner or later:

  1. Agent fatigue. You'll manage endless proprietary agents and OpenTelemetry Collectors that collect and forward telemetry to different observability backends, leading to performance issues.
  2. Endless configuration files. Even with GitOps practices you'll have to manage hundreds of configuration files for different sources, destinations, and processors written in either proprietary languages or YAML.
  3. High complexity. OpenTelemetry's complexity and learning curve make it difficult to implement, manage, and re-point telemetry without a centralized management plane like Bindplane Telemetry Pipeline to standardize telemetry ingestion, processing, and shipping, with a unified, OpenTelemetry-native pipeline.

An OpenTelemetry Collector you're used to

The BDOT Collector is observIQ’s distribution of the upstream OpenTelemetry Collector. It’s the first distribution to implement the Open Agent Management Protocol (OpAMP) and is designed to be fully managed with Bindplane Telemetry Pipeline.

Focused on usability

Increases the accessibility of OpenTelemetry by providing simplified installation scripts, tested example configurations, and end-to-end documentation making it easy to get started.

All the best parts of OpenTelemetry and more

Bundled with all core OpenTelemetry receivers, processors, and exporters as well as additional capabilities for monitoring complex or enterprise technologies not yet available in upstream releases

Always production-ready and fully-supported

Tested, verified, and supported by observIQ.

Getting Started

Follow the Getting Started guide for more detailed installation instructions, or view the list of Supported Operating System Versions.

To continue with the quick start, follow along below.

Linux

Install BDOT Collector using the installation script below.

sudo sh -c "$(curl -fsSlL https://github.com/observiq/bindplane-otel-collector/releases/latest/download/install_unix.sh)" install_unix.sh

To install directly with the appropriate package manager, and how to configure OpAMP, see installing on Linux.

Windows

To install the BDOT Collector on Windows run the Powershell command below to install the MSI with no UI.

msiexec /i "https://github.com/observIQ/bindplane-otel-collector/releases/latest/download/observiq-otel-collector.msi" /quiet

Alternately, for an interactive installation download the latest MSI.

After downloading the MSI, simply double click it to open the installation wizard. Follow the instructions to configure and install the BDOT Collector.

For more installation information, and how to configure OpAMP, see installing on Windows.

macOS

Install BDOT Collector using the installation script below.

sudo sh -c "$(curl -fsSlL https://github.com/observiq/bindplane-otel-collector/releases/latest/download/install_macos.sh)" install_macos.sh

For more installation information, and how to configure OpAMP, see installing on macOS.

Next Steps

BDOT Collector default config.yaml

With the BDOT Collector installed, it will start collecting basic metrics about the host machine printing them to the log. To further configure your collector edit the config.yaml file just like you would an OpenTelemetry Collector. To find your config.yaml file based on your operating system, reference the table below:

OS Default Location
Linux /opt/observiq-otel-collector/config.yaml
Windows C:\Program Files\observIQ OpenTelemetry Collector\config.yaml
macOS /opt/observiq-otel-collector/config.yaml

For more information on configuration see the Configuration section.

Manage BDOT Collector with Bindplane Telemetry Pipeline via OpAMP

Improving developer experience with OpenTelemetry is observIQ's primary focus. We're building Bindplane Telemetry Pipeline to help deploy and manage OpenTelemetry Collectors at scale, but retain core OpenTelemetry Standards for terminology and configuration, with the added benefit of enabling remote management with OpAMP.

The BDOT Collector can be configured as an OpenTelemetry Collector that is managed by the Bindplane Telemetry Pipeline via OpAMP. Bindplane is designed to be OpenTelemetry-first, with OpenTelemetry as its core framework. By providing a centralized management plane, it simplifies the development, implementation, management, and configuration of OpenTelemetry.

For more information on managing collectors via OpAMP see the Connecting to Bindplane Telemetry Pipeline with OpAMP section.

Configuration

The BDOT Collector uses OpenTelemetry Collector configuration.

For sample configs, see the config directory. For general configuration help, see the OpenTelemetry docs.

For configuration options of a specific component, take a look at the README found in their respective module roots. For a list of currently supported components see Included Components.

For a list of possible command line arguments to use with the BDOT Collector, run the collector with the --help argument.

Included Components

Receivers

For supported receivers and their documentation see receivers.

Processors

For supported processors and their documentation see processors.

Exporters

For supported exporters and their documentation see exporters.

Extensions

For supported extensions and their documentation see extensions.

Connectors

For supported connectors and their documentation see connectors.

Example config.yaml

Here's a sample setup for hostmetrics on Google Cloud. To make sure your environment is set up with required prerequisites, see the Google Cloud Exporter Prerequisites page. Further details for this GCP example can be found here.

# Receivers collect metrics from a source. The hostmetrics receiver will get
# CPU load metrics about the machine the collector is running on every minute.
receivers:
  hostmetrics:
    collection_interval: 60s
    scrapers:
      cpu:
      disk:
      load:
      filesystem:
      memory:
      network:
      paging:
      processes:

# Exporters send the data to a destination, in this case GCP.
exporters: 
  googlecloud:

# Service specifies how to construct the data pipelines using the configurations above.
service:
  pipelines:
    metrics:
      receivers: [hostmetrics]
      exporters: [googlecloud]

Connecting to Bindplane Telemetry Pipeline with OpAMP

Bindplane is designed to be OpenTelemetry-first, with OpenTelemetry as its core framework, to create a unified toolset with data ownership. By providing a centralized management plane, it simplifies the development, implementation, management, and configuration of OpenTelemetry.

To learn more about configuring OpAMP, see OpAMP Configuration, or get started with Bindplane Telemetry Pipeline below.

Bindplane Cloud

Bindplane Cloud is the quickest way to get started with OpenTelemetry-native telemetry pipelines. It offers managed infrastructure along with instant, free access for development projects and proofs of concept.

Sign-up

Bindplane On Prem

You can also get started with Bindplane On Prem for free by hosting it yourself.

Download

Major Versions

V1

V1 distributions of the BDOT Collector use a custom OpAMP manager built into the BDOT Collector to interface between the OpenTelemetry collector and the OpAMP server run by Bindplane.

V2

V2 is the latest major release of the BDOT Collector. This version is currently in Beta. V2 distributions of the BDOT Collector use the OpenTelemetry OpAMP supervisor to interface between the OpenTelemetry Collector and the OpAMP server run by Bindplane. For more information, see this documentation.

Community

Have an idea to improve the Bindplane Distro for OpenTelemetry Collector? Here's how you can help:

  • Star this repo ⭐️ and follow us on Twitter.
  • Upvote issues with 👍 so we know what to prioritize in the road map.
  • Create issues when you feel something is missing or wrong.
  • Join our Slack Community, and ask us any questions there.

Contributing

The Bindplane Distro for OpenTelemetry Collector is an open source project. If you'd like to contribute, take a look at our contribution guidelines and developer guide.

All sorts of contributions are welcome and extremely helpful. 🙌

How can we help?

If you need any additional help feel free to reach out to us at support@observiq.com.

Directories

Path Synopsis
cmd
collector
Package main provides entry point for the collector
Package main provides entry point for the collector
Package collector presents an interface that wraps the OTel Collector Core
Package collector presents an interface that wraps the OTel Collector Core
counter module
exporter
qradar Module
expr module
extension
Package factories provides factories for components in the collector
Package factories provides factories for components in the collector
internal
logging
Package logging parses and applies logging configuration
Package logging parses and applies logging configuration
os
Package os handles grabbing OS info from the system
Package os handles grabbing OS info from the system
processor/snapshotprocessor
Package snapshotprocessor collects metrics, traces, and logs for
Package snapshotprocessor collects metrics, traces, and logs for
service
Package service provides a service wrapper around the collector regardless of managed or standalone mode.
Package service provides a service wrapper around the collector regardless of managed or standalone mode.
version
Package version exposes data on the collector set at compile time
Package version exposes data on the collector set at compile time
measurements Module
rehydration Module
report Module
testutils Module
topology Module
Package opamp contains configurations and protocol implementations to handle OpAmp communication.
Package opamp contains configurations and protocol implementations to handle OpAmp communication.
observiq
Package observiq contains OpAmp structures compatible with the observiq client
Package observiq contains OpAmp structures compatible with the observiq client
packagestate module
pkg
topology Module
processor
maskprocessor Module
receiver
httpreceiver Module
m365receiver Module
oktareceiver Module
routereceiver Module
updater module

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL