opentelemetry-collector/receiver
Bogdan Drutu 3356863030
Move config.Map to its own package which does not depend on any component concept (#5237)
Signed-off-by: Bogdan Drutu <bogdandrutu@gmail.com>
2022-05-31 10:51:24 -07:00
..
otlpreceiver Move config.Map to its own package which does not depend on any component concept (#5237) 2022-05-31 10:51:24 -07:00
scrapererror Enable errorlint and fix all warnings (#5364) 2022-05-16 10:36:41 -07:00
scraperhelper Deprecate componenterror package, move to component (#5383) 2022-05-17 17:18:08 -07:00
README.md Remove hostmetricsreceiver from docs (#3904) 2021-08-27 08:23:30 -07:00
doc.go Adds vanity import check (#4180) 2021-10-12 13:47:36 -07:00

README.md

General Information

A receiver is how data gets into the OpenTelemetry Collector. Generally, a receiver accepts data in a specified format, translates it into the internal format and passes it to processors and exporters defined in the applicable pipelines.

Available trace receivers (sorted alphabetically):

Available metric receivers (sorted alphabetically):

Available log receivers (sorted alphabetically):

The contrib repository has more receivers that can be added to custom builds of the collector.

Configuring Receivers

Receivers are configured via YAML under the top-level receivers tag. There must be at least one enabled receiver for a configuration to be considered valid.

The following is a sample configuration for the examplereceiver.

receivers:
  # Receiver 1.
  # <receiver type>:
  examplereceiver:
    # <setting one>: <value one>
    endpoint: 1.2.3.4:8080
    # ...
  # Receiver 2.
  # <receiver type>/<name>:
  examplereceiver/settings:
    # <setting two>: <value two>
    endpoint: 0.0.0.0:9211

A receiver instance is referenced by its full name in other parts of the config, such as in pipelines. A full name consists of the receiver type, '/' and the name appended to the receiver type in the configuration. All receiver full names must be unique.

For the example above:

  • Receiver 1 has full name examplereceiver.
  • Receiver 2 has full name examplereceiver/settings.

Receivers are enabled upon being added to a pipeline. For example:

service:
  pipelines:
    # Valid pipelines are: traces, metrics or logs
    # Trace pipeline 1.
    traces:
      receivers: [examplereceiver, examplereceiver/settings]
      processors: []
      exporters: [exampleexporter]
    # Trace pipeline 2.
    traces/another:
      receivers: [examplereceiver, examplereceiver/settings]
      processors: []
      exporters: [exampleexporter]

At least one receiver must be enabled per pipeline to be a valid configuration.