TELEMETRY PIPELINE
Chronosphere

Chronosphere Logs destination plugin

The Chronosphere Logs destination plugin lets you configure your Telemetry Pipeline to output log data to Chronosphere.

Supported telemetry types

This plugin supports these telemetry types:

LogsMetricsTraces

Configuration parameters

Use the parameters in this section to configure your plugin. The Telemetry Pipeline web interface uses the values in the Name column to describe the parameters. Items in the Key column are the YAML keys to use in pipeline configuration files.

General

NameKeyDescriptionDefault
HosthostRequired. Your Observability Platform instance.ADDRESS.ingest.logs.chronosphere.io
PortportRequired. The port to communicate with Observability Platform.443
KeyheaderRequired. The header type to include with your request.Authorization
ValueheaderRequired. Your ingest API token to authenticate with Chronosphere.Bearer API_TOKEN
  • Replace ADDRESS with your company name prefixed to your Observability Platform instance that ends in ingest.logs.chronosphere.io. For example, MY_COMPANY.ingest.logs.chronosphere.io.
  • Replace API_TOKEN with your ingest API token.

Advanced

NameKeyDescriptionDefault
URIuriOptional. HTTP URI for the web server. For example, /api/v1/ingest/json./api/v1/ingest/json
FormatformatThe data format to use in the HTTP request.json
CompresscompressSets payload compression. Accepted values: gzip, none.none
HTTP ProxyproxySpecifies an HTTP proxy. The expected format is http://host:port.none
JSON Date Formatjson_date_formatSpecifies the date format. Accepted values: double, epoch, iso8601 (such as 2018-05-30T09:39:52.000681Z), java_sql_timestamp (such as 2018-05-30 09:39:52.000681).iso8601
JSON Date Keyjson_date_keySpecifies the name of the date field in output._time
Body Keybody_keySpecifies the key that contains the body.none
Header Tagheader_tagSets an HTTP header whose value is the tag of the record.none
Header Keyheaders_keySpecifies the key that contains the headers.none

Security and TLS

NameKeyDescriptionDefault
TLStlsEnables or disables TLS/SSL support. Accepted values: true, false.false
TLS Certificate Validationtls.verifyEnables or disables TLS/SSL certificate validation. TLS must be enabled for certificates to be validated. Accepted values: off, on.on
TLS Debug Leveltls.debugSets TLS debug verbosity level. Accepted values: 0 (No debug), 1 (Error), 2 (State change), 3 (Informational), 4 (Verbose).1
CA Certificate File Pathtls.ca_fileAbsolute path to CA certificate file.none
Certificate File Pathtls.crt_fileAbsolute path to certificate file.none
Private Key File Pathtls.key_fileAbsolute path to private key file.none
Private Key Path Passwordtls.key_passwdPassword for private key file.none
TLS SNI Hostname Extensiontls.vhostHostname to be used for TLS SNI extension.none

Advanced Networking

NameKeyDescriptionDefault
DNS Modenet.dns.modeSelects the primary DNS connection type, which can be TCP or UDP.none
DNS Resolvernet.dns.resolverSelects the primary DNS connection type, which can be LEGACY or ASYNC.none
Prefer IPv4net.dns.prefer_ipv4Prioritizes IPv4 DNS results when trying to establish a connection. Accepted values: true, false.false
Keepalivenet.keepaliveEnables or disables Keepalive support. Accepted values: true, false.true
Keepalive Idle Timeoutnet.keepalive_idle_timeoutSets the maximum time allowed for an idle Keepalive connection.30s
Max Connect Timeoutnet.connect_timeoutSets the maximum time allowed to establish a connection, which includes the TLS handshake.10s
Max Connect Timeout Log Errornet.connect_timeout_log_errorSpecifies whether to log an error on connection timeout. When disabled, the timeout is logged as a debug message. Accepted values: true, false.true
Max Keepalive Recyclenet.keepalive_max_recycleSets the maximum number of times a keepalive connection can be used before it's retired.2000
Source Addressnet.source_addressSpecifies the network address to bind for data traffic.none

Basic Authentication

NameKeyDescriptionDefault
HTTP Usernamehttp_userBasic auth username.none
HTTP Passwordhttp_passwdBasic auth password. Requires http_user to be set.none

Example

The following YAML configuration defines a Fluent Bit input and a Chronosphere Logs output.

pipeline:
  inputs:
    - Name: forward
      alias: Fluent_Bit
      port: "5170"
      tls.verify: on
      tls.debug: "1"
      tag: forward.cb3bae48-0000-4a51-0000-f6ccd3f0ed0c
  filters:
    - Name: lua
      match: forward.cb3bae48-0000-4a51-0000-f6ccd3f0ed0c
      active: "false"
  outputs:
    - Name: http
      alias: Chronosphere
      host: MY_COMPANY.ingest.logs.chronosphere.io
      port: "443"
      header:
        - Authorization Bearer
          f31b...ed7t292
      uri: /api/v1/ingest/json
      format: json
      compress: on
      json_date_format: iso8601
      json_date_key: _time
      tls: true
      tls.verify: on
      tls.debug: "1"
      net.keepalive: true
      net.keepalive_idle_timeout: 30s
      net.connect_timeout: 10s
      net.connect_timeout_log_error: true
      net.keepalive_max_recycle: "2000"
      core.metadata:
        name: Chronosphere Logs ingest
      Match_Regex: .{0,}