Skip to content

instana/instana-otel-collector

Repository files navigation

Instana Distribution of OpenTelemetry Collector

Build Status Latest Release

Overview

The Instana Distibution of OpenTelemetry Collector (IDOT) aims to bring a streamlined OpenTelemetry experience to the Instana ecosystem.

IDOT was built using the builder found on the OpenTelemetry GitHub and follows the documentation found on the official OpenTelemetry Website.

Visit the IBM OpenTelemetry Documentation page to learn more about Instana-OpenTelemetry synergy.

Getting Started

Linux

On Linux machines, setup up can be done by downloading the latest release of the installer via the command:

curl -Lo instana_otelcol_setup.sh https://github.com/instana/instana-otel-collector/releases/latest/download/instana-collector-installer-latest.sh

chmod +x instana_otelcol_setup.sh

Once this has been downloaded, the installer script can be run by

./instana_otelcol_setup.sh -e <INSTANA_OTEL_ENDPOINT_GRPC> -a <INSTANA_KEY> [-H <INSTANA_OTEL_ENDPOINT_HTTP>] [-m INSTANA_METRICS_ENDPOINT] [-u USE_SUPERVISOR_SERVICE] [<install_path>]
<INSTANA_OTEL_ENDPOINT_GRPC> # GRPC Endpoint for Instana. Format <ip_address>:<port>
<INSTANA_KEY> # Key for authentication into Instana
<INSTANA_OTEL_ENDPOINT_HTTP> # HTTP Endpoint for Instana. Format <ip_address>:<port>
<INSTANA_METRICS_ENDPOINT> # Endpoint for sending collector metrics to. Format <ip_address>:<port>
<USE_SUPERVISOR_SERVICE> # Set as true by default to enable the collector supervisor feature, false will leave the supervisor disabled.

Note

INSTANA_OTEL_ENDPOINT_GRPC and INSTANA_KEY are required parameters to run the installer.

The installation script will install and initiate the Instana Collector Service on your system using the parameters above.

These paramaters can be changed later in the config.env file found under install_path (default is /opt/instana/collector/config/config.env)

Instana Collector Service

By default the installer will install and start the service. However, there are a few parameters to choose from when interacting with the Instana Collector Service. Each of these all run the corresponding systemd commands in a user friendly manner. Run these commands under the bin folder within the install_path (default is /opt/instana/collector/bin).

./instana_collector_service.sh install # Will install the service (done automatically by installation script)

./instana_collector_service.sh uninstall # Uninstall the service (done automatically by uninstallation script)

./instana_collector_service.sh status # Display the activity status of the collector service

./instana_collector_service.sh start # Initiate the collector service

./instana_collector_service.sh stop # Stop the collector service

./instana_collector_service.sh restart # Restart the collector service

Additionally, the service command can be used here as well.

service instana-collector start # Start collector service

service instana-collector stop # Stop collector service

service instana-collector restart # Restart collector service

service instana-collector status # Display status of collector service

Instana Supervisor Service

Note

If USE_SUPERVISOR_SERVICE is set as false during installation, skip this section.

The Instana Supervisor Service works akin to the Instana Collector Service and supports the same commands, however does not support management through the service keyword.

./instana_supervisor_service.sh install # Will install the service (done automatically by installation script if false isn't specified for USE_SUPERVISOR_SERVICE)

./instana_supervisor_service.sh uninstall # Uninstall the service (done automatically by uninstallation script)

./instana_supervisor_service.sh status # Display the activity status of the supervisor service

./instana_supervisor_service.sh start # Initiate the supervisor service

./instana_supervisor_service.sh stop # Stop the supervisor service

./instana_supervisor_service.sh restart # Restart the supervisor service

Kubernetes

Visit Kubernetes Deployment Guide for more information.

Windows

Coming soon...

MacOS

Coming soon...

Configuration and Setup

The collector can be fine tuned for your needs through the use of a config.yaml file. Based on the operating system the path will change:

OS Default Path
Linux /opt/instana/collector/config/config.yaml

Pipelines for Telemetry Data can be defined and altered as needed. For example, a simple pipeline for log data can be defined as follows:

receivers:
    # Specifies a file log receiver to include logs from a given path
    filelog:
        include: ["path/to/logs/*.log"]
processors:
    # Specify a transform processor to add a processed attribute to the log
    transform:
        log_statements:
            - set(log.body, log.attributes["processed"])
exporters:
    # Configure an otlp exporter for this log data to be sent to
    otlp:
        endpoint: YOURENDPOINT

# Assemble the data pipeline from the configured components
services:
    pipelines:
        logs:
            receivers: [filelog]
            processors: [transform]
            exporters: [otlp]

Supported Components

See the table below for links to supported components

Component Link
Receivers Receiver List
Processors Processor List
Exporters Exporter List
Extensions Extensions List
Providers Provider List

OpAmp Support

Coming soon...

Troubleshooting

For common issues and their solutions, please refer to our troubleshooting guide. This guide covers installation problems, connectivity issues, and platform-specific troubleshooting steps.

Uninstallation

The installation script adds an uninstallation script under collector/bin in install_path

Running this script will stop the Instana Collector Service and remove all collector files from the system.

Contributing

Instana Distribution of OpenTelemetry Collector is an open source project and any contribution is welcome and appreciated.

About

Instana Distribution of OpenTelemetry Collector

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Contributors 4

  •  
  •  
  •  
  •