UNPKG

recoder-code

Version:

Complete AI-powered development platform with ML model training, plugin registry, real-time collaboration, monitoring, infrastructure automation, and enterprise deployment capabilities

197 lines (182 loc) 6 kB
# Prometheus Configuration for Enhanced AI CLI global: scrape_interval: 15s evaluation_interval: 15s external_labels: cluster: 'enhanced-ai-cli' environment: 'production' # Rules for alerting rule_files: - "rules/*.yml" # Scrape configurations scrape_configs: # Prometheus itself - job_name: 'prometheus' static_configs: - targets: ['localhost:9090'] scrape_interval: 30s metrics_path: /metrics # Enhanced AI CLI Application - job_name: 'enhanced-ai-cli' kubernetes_sd_configs: - role: pod namespaces: names: ['production', 'staging'] relabel_configs: - source_labels: [__meta_kubernetes_pod_annotation_prometheus_io_scrape] action: keep regex: true - source_labels: [__meta_kubernetes_pod_annotation_prometheus_io_path] action: replace target_label: __metrics_path__ regex: (.+) - source_labels: [__address__, __meta_kubernetes_pod_annotation_prometheus_io_port] action: replace regex: ([^:]+)(?::\d+)?;(\d+) replacement: $1:$2 target_label: __address__ - action: labelmap regex: __meta_kubernetes_pod_label_(.+) - source_labels: [__meta_kubernetes_namespace] action: replace target_label: kubernetes_namespace - source_labels: [__meta_kubernetes_pod_name] action: replace target_label: kubernetes_pod_name scrape_interval: 15s metrics_path: /metrics # Node Exporter for system metrics - job_name: 'node-exporter' kubernetes_sd_configs: - role: node relabel_configs: - action: labelmap regex: __meta_kubernetes_node_label_(.+) - target_label: __address__ replacement: kubernetes.default.svc:443 - source_labels: [__meta_kubernetes_node_name] regex: (.+) target_label: __metrics_path__ replacement: /api/v1/nodes/${1}/proxy/metrics scheme: https tls_config: ca_file: /var/run/secrets/kubernetes.io/serviceaccount/ca.crt bearer_token_file: /var/run/secrets/kubernetes.io/serviceaccount/token # Kubernetes API Server - job_name: 'kubernetes-apiservers' kubernetes_sd_configs: - role: endpoints namespaces: names: ['default'] scheme: https tls_config: ca_file: /var/run/secrets/kubernetes.io/serviceaccount/ca.crt bearer_token_file: /var/run/secrets/kubernetes.io/serviceaccount/token relabel_configs: - source_labels: [__meta_kubernetes_namespace, __meta_kubernetes_service_name, __meta_kubernetes_endpoint_port_name] action: keep regex: default;kubernetes;https # Kubernetes Nodes - job_name: 'kubernetes-nodes' kubernetes_sd_configs: - role: node scheme: https tls_config: ca_file: /var/run/secrets/kubernetes.io/serviceaccount/ca.crt bearer_token_file: /var/run/secrets/kubernetes.io/serviceaccount/token relabel_configs: - action: labelmap regex: __meta_kubernetes_node_label_(.+) - target_label: __address__ replacement: kubernetes.default.svc:443 - source_labels: [__meta_kubernetes_node_name] regex: (.+) target_label: __metrics_path__ replacement: /api/v1/nodes/${1}/proxy/metrics # Kubernetes Pods - job_name: 'kubernetes-pods' kubernetes_sd_configs: - role: pod relabel_configs: - source_labels: [__meta_kubernetes_pod_annotation_prometheus_io_scrape] action: keep regex: true - source_labels: [__meta_kubernetes_pod_annotation_prometheus_io_path] action: replace target_label: __metrics_path__ regex: (.+) - source_labels: [__address__, __meta_kubernetes_pod_annotation_prometheus_io_port] action: replace regex: ([^:]+)(?::\d+)?;(\d+) replacement: $1:$2 target_label: __address__ - action: labelmap regex: __meta_kubernetes_pod_label_(.+) - source_labels: [__meta_kubernetes_namespace] action: replace target_label: kubernetes_namespace - source_labels: [__meta_kubernetes_pod_name] action: replace target_label: kubernetes_pod_name # Redis Exporter - job_name: 'redis-exporter' static_configs: - targets: ['redis-exporter:9121'] scrape_interval: 30s # PostgreSQL Exporter - job_name: 'postgres-exporter' static_configs: - targets: ['postgres-exporter:9187'] scrape_interval: 30s # Nginx Exporter - job_name: 'nginx-exporter' static_configs: - targets: ['nginx-exporter:9113'] scrape_interval: 30s # Grafana - job_name: 'grafana' static_configs: - targets: ['grafana:3000'] scrape_interval: 30s metrics_path: /metrics # Application-specific metrics - job_name: 'enhanced-ai-cli-custom' static_configs: - targets: ['enhanced-ai-cli:8080'] metrics_path: /api/metrics scrape_interval: 10s scrape_timeout: 5s params: format: ['prometheus'] # Alertmanager configuration alerting: alertmanagers: - kubernetes_sd_configs: - role: pod namespaces: names: ['monitoring'] relabel_configs: - source_labels: [__meta_kubernetes_pod_label_app] action: keep regex: alertmanager - source_labels: [__meta_kubernetes_pod_container_port_number] action: keep regex: 9093 # Remote write configuration for long-term storage remote_write: - url: "https://prometheus-us-central1.grafana.net/api/prom/push" basic_auth: username: "${GRAFANA_CLOUD_PROMETHEUS_USER}" password: "${GRAFANA_CLOUD_PROMETHEUS_PASSWORD}" write_relabel_configs: - source_labels: [__name__] regex: 'enhanced_ai_cli_.*|up|prometheus_.*' action: keep # Storage configuration storage: tsdb: path: /prometheus/data retention.time: 30d retention.size: 10GB wal-compression: true no-lockfile: true