init_config:

instances:

    ## @param prometheus_url - string - required
    ## The URL where your application metrics are exposed by Prometheus.
    #
  - prometheus_url: https://us-east-1.aws.metrics.cloud.scylladb.com/api/v1/cluster/CLUSTER_ID/proxy/federate?match[]={dd=~"1"} 

    ## @param namespace - string - required
    ## The namespace to be appended before all metrics namespace
    #
    namespace: scylla 

    ## @param metrics - list of key:value elements - required
    ## List of `<METRIC_TO_FETCH>: <NEW_METRIC_NAME>` for metrics to be fetched from the prometheus endpoint.
    ## <NEW_METRIC_NAME> is optional. It transforms the name in Datadog if set.
    ## This list should contain at least one metric
    #
    metrics:
    - scylla_*
    - wlatency* 
    - rlatency*
    - cql*
    - manager*
    - errors*
    - node*

    scrape_interval: 10s
    extra_headers:
      Authorization: "Bearer TOKEN"

    ## @param prometheus_metrics_prefix - string - optional
    ## Prefix for exposed Prometheus metrics.
    #
    # prometheus_metrics_prefix: <PREFIX>_

    ## @param health_service_check - boolean - optional - default: true
    ## Send a service check reporting about the health of the prometheus endpoint
    ## It will be named <NAMESPACE>.prometheus.health
    #
    # health_service_check: true

    ## @param label_to_hostname - string - optional
    ## Override the hostname with the value of one label.
    #
    label_to_hostname: instance 

    ## @param label_joins - object - optional
    ## The label join allows to target a metric and retrieve it's label via a 1:1 mapping
    #
    # label_joins:
    #   target_metric:
    #     label_to_match: <MATCHED_LABEL>
    #     labels_to_get:
    #       - <LABEL_TO_GET>

    ## @param labels_mapper - list of key:value element - optional
    ## The label mapper allows you to rename some labels
    ## Format is <LABEL_TO_RENAME>: <NEW_LABEL_NAME>
    #
    # labels_mapper:
    #   flavor: origin

    ## @param type_overrides - list of key:value element - optional
    ## Type override allows you to override a type in the prometheus payload
    ## or type an untyped metrics (they're ignored by default)
    ## Supported <METRIC_TYPE> are `gauge`, `counter`, `histogram`, `summary`
    #
    #type_overrides:
    ## @param tags - list of key:value element - optional
    ## List of tags to attach to every metric, event and service check emitted by this integration.
    ##
    ## Learn more about tagging: https://docs.datadoghq.com/tagging/
    #
    # tags:
    #   - <KEY_1>:<VALUE_1>
    #   - <KEY_2>:<VALUE_2>

    ## @param send_histograms_buckets - boolean - optional - default: true
    ## Set send_histograms_buckets to true to send the histograms bucket.
    #
    # send_histograms_buckets: true

    ## @param send_monotonic_counter - boolean - optional - default: true
    ## To send counters as monotonic counter
    ##
    ## see: https://github.com/DataDog/integrations-core/issues/1303
    #
    # send_monotonic_counter: true

    ## @param exclude_labels - list of string - optional
    ## List of label to be excluded.
    #
    # exclude_labels:
    #   - timestamp

    ## @param ssl_cert - string - optional
    ## If your prometheus endpoint is secured, here are the settings to configure it
    ## Can either be only the path to the certificate and thus you should specify the private key
    ## or it can be the path to a file containing both the certificate & the private key
    #
    # ssl_cert: "<CERT_PATH>"

    ## @param ssl_private_key - string - optional
    ## Needed if the certificate does not include the private key
    ## WARNING: The private key to your local certificate must be unencrypted.
    #
    # ssl_private_key: "<KEY_PATH>"

    ## @param ssl_ca_cert - string - optional
    ## The path to the trusted CA used for generating custom certificates. Set this to false to disable SSL certificate
    ## verification.
    #
    # ssl_ca_cert: "<CA_CERT_PATH>"

    ## @param prometheus_timeout - integer - optional - default: 10
    ## Set a timeout in second for the prometheus query.
    #
    # prometheus_timeout: 10

    ## @param max_returned_metrics - integer - optional - default: 2000
    ## The check limits itself to 2000 metrics by default, increase this limit if needed.
    #
    max_returned_metrics: 20000

