apiVersion: operator.victoriametrics.com/v1beta1
kind: VMPodScrape
metadata:
  labels:
    o11y.cloud.pingcap.com/agent: sharedpool
    o11y.cloud.pingcap.com/component: serverless-multitenant
  name: tidb-multitenant
  namespace: "{{ .Namespace }}"
spec:
  jobLabel: serverless-tidb-pool
  namespaceSelector:
    matchNames:
    - tidb-pool
    - vip-tidb-pool
    - canary-tidb-pool
    - canary-vip-tidb-pool
    - super-vip-tidb-pool
    - canary-super-vip-tidb-pool
  podMetricsEndpoints:
  - honorLabels: true
    metricRelabelConfigs:
    - action: keep
      regex: tidb_config_status|tidb_executor_statement_total|tidb_server_connections|tidb_monitor_time_jump_back_total|tidb_server_critical_error_total|tidb_server_disconnection_total|tidb_server_execute_error_total|tidb_server_query_total|tidb_server_tokens|tidb_session_transaction_duration_seconds_.+|tidb_server_handle_query_duration_seconds_.+|tidb_tikvclient_region_err_total|tidb_tikvclient_backoff_seconds_bucket|tidb_server_panic_total|tidb_server_conn_idle_duration_seconds_.+|tidb_tikvclient_pessimistic_lock_keys_duration_.+|tidb_session_resource_group_query_total
      separator: ;
      source_labels:
      - __name__
    - action: drop
      regex: ;(.+)
      source_labels:
      - keyspace_id
      - __name__
    - action: replace
      regex: (.+)
      source_labels:
      - keyspace_id
      target_label: vm_project_id
    relabelConfigs:
    - action: keep
      regex: .*tidb-pool
      source_labels:
      - __meta_kubernetes_namespace
    - action: keep
      regex: "true"
      source_labels:
      - __meta_kubernetes_pod_annotation_prometheus_io_scrape
    - action: keep
      regex: serverless-tidb
      source_labels:
      - __meta_kubernetes_pod_label_app_kubernetes_io_component
    - action: keep
      regex: status
      source_labels:
      - __meta_kubernetes_pod_container_port_name
    - action: keep
      regex: tidb
      source_labels:
      - __meta_kubernetes_pod_container_name
    - action: replace
      regex: ([^:]+)(?::\d+)?;(\d+)
      replacement: ${1}:${2}
      source_labels:
      - __address__
      - __meta_kubernetes_pod_annotation_prometheus_io_port
      target_label: __address__
    - action: replace
      source_labels:
      - __meta_kubernetes_namespace
      target_label: kubernetes_namespace
    - action: replace
      source_labels:
      - __meta_kubernetes_pod_name
      target_label: instance
    - action: replace
      replacement: tidb
      source_labels:
      - __meta_kubernetes_pod_label_app_kubernetes_io_component
      target_label: component
    - separator: '-'
      source_labels:
      - __meta_kubernetes_namespace
      - __meta_kubernetes_pod_name
      target_label: tidb_cluster
    - action: replace
      regex: (.+)
      source_labels:
      - __meta_kubernetes_pod_annotation_prometheus_io_path
      target_label: __metrics_path__
    scheme: https
    scrape_interval: 1m0s
    tlsConfig:
      caFile: /etc/vm/secrets/vmagent-cluster-secret/ca.crt
      certFile: /etc/vm/secrets/vmagent-cluster-secret/tls.crt
      insecureSkipVerify: true
      keyFile: /etc/vm/secrets/vmagent-cluster-secret/tls.key
