{
  "id": "apmplus-openclaw-plugin",
  "name": "APMPlus OpenClaw Observability Plugin",
  "version": "0.2.15",
  "description": "Report OpenClaw observability signals via OpenTelemetry",
  "type": "plugin",
  "entry": "./index.js",
  "configSchema": {
    "type": "object",
    "properties": {
      "endpoint": {
        "type": "string",
        "description": "OTLP endpoint base URL (traces/metrics/logs will append /v1/traces, /v1/metrics, /v1/logs)"
      },
      "headers": {
        "type": "object",
        "additionalProperties": {
          "type": "string"
        },
        "default": {},
        "description": "Custom headers for OTLP requests (e.g. Authorization)"
      },
      "serviceName": {
        "type": "string",
        "description": "Service name for traces"
      },
      "exportIntervalMillis": {
        "type": "number",
        "default": 30000,
        "description": "Metrics export interval in milliseconds"
      },
      "debug": {
        "type": "boolean",
        "default": false,
        "description": "Enable debug logging"
      },
      "openclawNativeMetrics": {
        "type": "boolean",
        "default": true,
        "description": "Enable OpenClaw Native Metrics"
      },
      "log": {
        "type": "boolean",
        "default": true,
        "description": "Enable log "
      },
      "metric": {
        "type": "boolean",
        "default": true,
        "description": "Whether to enable metrics export"
      },
      "trace": {
        "type": "boolean",
        "default": true,
        "description": "Whether to enable trace export"
      },
      "reportDiagnosticsLog": {
        "type": "boolean",
        "default": false,
        "description": "Enable diagnostics log"
      },
      "diagnosticsLogEndpoint": {
        "type": "string",
        "description": "Custom OTLP HTTP endpoint for diagnostics logs. If not set, will fallback to endpoint/v1/logs"
      },
      "allowUserDetailInfoReport": {
        "type": "boolean",
        "default": true,
        "description": "Whether to report all span attributes (will include e.g. user_id, session_id, chat detail, chat log)"
      },
      "extraResourceAttributes": {
        "type": "object",
        "additionalProperties": {
          "type": "string"
        },
        "default": {},
        "description": "Custom Attributes for OTEL Resource"
      }
    }
  }
}