{
  "attributes": {
    "mask": {
      "description": "The mask name that matched more than one position in a single template.",
      "type": "string"
    }
  },
  "description": "The Drain Processor applies the Drain log clustering algorithm to log records as they pass through the pipeline, deriving a template string (e.g. \"user <*> logged in from <*>\") and attaching it as an attribute on each record.",
  "display_name": "Drain Processor",
  "distribution": "contrib",
  "ecosystem": "collector",
  "id": "contrib-drainprocessor",
  "markdown_hash": "c48b9f0eef30",
  "name": "drainprocessor",
  "repository": "opentelemetry-collector-contrib",
  "status": {
    "class": "processor",
    "codeowners": {
      "active": [
        "MikeGoldsmith",
        "atoulme",
        "martinjt"
      ]
    },
    "distributions": [
      "contrib",
      "k8s"
    ],
    "stability": {
      "alpha": [
        "logs"
      ]
    }
  },
  "telemetry": {
    "metrics": {
      "processor_drain_clusters_active": {
        "description": "Current number of active clusters in the Drain parse tree.",
        "enabled": true,
        "gauge": {
          "value_type": "int"
        },
        "stability": "development",
        "unit": "{clusters}"
      },
      "processor_drain_log_records_annotated": {
        "description": "Number of log records successfully annotated with a template.",
        "enabled": true,
        "stability": "development",
        "sum": {
          "monotonic": true,
          "value_type": "int"
        },
        "unit": "{records}"
      },
      "processor_drain_masks_duplicates": {
        "attributes": [
          "mask"
        ],
        "description": "Number of records where a mask name matched more than one position in the matched template. Incremented once per record per duplicated mask name; the losing values are discarded and first-match wins.",
        "enabled": true,
        "stability": "development",
        "sum": {
          "monotonic": true,
          "value_type": "int"
        },
        "unit": "{records}"
      }
    }
  },
  "type": "processor"
}