# Configuration for OpenSearch to send metrics to. [[outputs.opensearch]] ## URLs ## The full HTTP endpoint URL for your OpenSearch instance. Multiple URLs can ## be specified as part of the same cluster, but only one URLs is used to ## write during each interval. urls = ["http://node1.os.example.com:9200"] ## Index Name ## Target index name for metrics (OpenSearch will create if it not exists). ## This is a Golang template (see https://pkg.go.dev/text/template) ## You can also specify ## metric name (`{{.Name}}`), tag value (`{{.Tag "tag_name"}}`), field value (`{{.Field "field_name"}}`) ## If the tag does not exist, the default tag value will be empty string "". ## the timestamp (`{{.Time.Format "xxxxxxxxx"}}`). ## For example: "telegraf-{{.Time.Format \"2006-01-02\"}}-{{.Tag \"host\"}}" would set it to telegraf-2023-07-27-HostName index_name = "" ## Timeout ## OpenSearch client timeout # timeout = "5s" ## Sniffer ## Set to true to ask OpenSearch a list of all cluster nodes, ## thus it is not necessary to list all nodes in the urls config option # enable_sniffer = false ## GZIP Compression ## Set to true to enable gzip compression # enable_gzip = false ## Health Check Interval ## Set the interval to check if the OpenSearch nodes are available ## Setting to "0s" will disable the health check (not recommended in production) # health_check_interval = "10s" ## Set the timeout for periodic health checks. # health_check_timeout = "1s" ## HTTP basic authentication details. # username = "" # password = "" ## HTTP bearer token authentication details # auth_bearer_token = "" ## Optional TLS Config ## Set to true/false to enforce TLS being enabled/disabled. If not set, ## enable TLS only if any of the other options are specified. # tls_enable = ## Trusted root certificates for server # tls_ca = "/path/to/cafile" ## Used for TLS client certificate authentication # tls_cert = "/path/to/certfile" ## Used for TLS client certificate authentication # tls_key = "/path/to/keyfile" ## Send the specified TLS server name via SNI # tls_server_name = "kubernetes.example.com" ## Use TLS but skip chain & host verification # insecure_skip_verify = false ## Template Config ## Manage templates ## Set to true if you want telegraf to manage its index template. ## If enabled it will create a recommended index template for telegraf indexes # manage_template = true ## Template Name ## The template name used for telegraf indexes # template_name = "telegraf" ## Overwrite Templates ## Set to true if you want telegraf to overwrite an existing template # overwrite_template = false ## Document ID ## If set to true a unique ID hash will be sent as ## sha256(concat(timestamp,measurement,series-hash)) string. It will enable ## data resend and update metric points avoiding duplicated metrics with ## different id's # force_document_id = false ## Value Handling ## Specifies the handling of NaN and Inf values. ## This option can have the following values: ## none -- do not modify field-values (default); will produce an error ## if NaNs or infs are encountered ## drop -- drop fields containing NaNs or infs ## replace -- replace with the value in "float_replacement_value" (default: 0.0) ## NaNs and inf will be replaced with the given number, -inf with the negative of that number # float_handling = "none" # float_replacement_value = 0.0 ## Pipeline Config ## To use a ingest pipeline, set this to the name of the pipeline you want to use. # use_pipeline = "my_pipeline" ## Pipeline Name ## Additionally, you can specify a tag name using the notation (`{{.Tag "tag_name"}}`) ## which will be used as the pipeline name (e.g. "{{.Tag "os_pipeline"}}"). ## If the tag does not exist, the default pipeline will be used as the pipeline. ## If no default pipeline is set, no pipeline is used for the metric. # default_pipeline = ""