-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathprescale-agent.yaml.example
More file actions
89 lines (81 loc) · 2.57 KB
/
prescale-agent.yaml.example
File metadata and controls
89 lines (81 loc) · 2.57 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
# Prescale Agent Configuration
# Unified metrics collection from any monitoring backend
# Prescale API endpoint
endpoint:
url: http://localhost:8080
api_key: ${PRESCALE_API_KEY} # Or set via environment
timeout: 30
retry_attempts: 3
# Metrics sources - add any combination of backends
sources:
# Local system metrics (always available)
#- name: local-system
# type: system
#enabled: true
#interval: 15
#options:
#collect_cpu: true
#collect_memory: true
#collect_disk: true
#collect_network: true
# Prometheus (if you have a Prometheus server)
# - name: prometheus
# type: prometheus
# enabled: false
# endpoint: http://prometheus:9090
# interval: 15
# queries:
# - 'sum(rate(container_cpu_usage_seconds_total{container!=""}[5m])) by (namespace, pod)'
# - 'sum(container_memory_usage_bytes{container!=""}) by (namespace, pod)'
# Datadog (requires API key)
# - name: datadog
# type: datadog
# enabled: false
# api_key: ${DATADOG_API_KEY}
# credentials:
# app_key: ${DATADOG_APP_KEY}
# options:
# site: us1 # us1, us3, us5, eu1, ap1
# metrics:
# - system.cpu.user
# - system.mem.used
# AWS CloudWatch (requires AWS credentials)
# - name: cloudwatch
# type: cloudwatch
# enabled: false
# credentials:
# aws_access_key_id: ${AWS_ACCESS_KEY_ID}
# aws_secret_access_key: ${AWS_SECRET_ACCESS_KEY}
# region: us-east-1
# metrics:
# - AWS/EC2/CPUUtilization
# - AWS/RDS/DatabaseConnections
# Azure Monitor (requires service principal)
# - name: azure-monitor
# type: azure_monitor
# enabled: false
# credentials:
# tenant_id: ${AZURE_TENANT_ID}
# client_id: ${AZURE_CLIENT_ID}
# client_secret: ${AZURE_CLIENT_SECRET}
# subscription_id: ${AZURE_SUBSCRIPTION_ID}
# Google Cloud Monitoring (requires service account)
- name: gcp-monitoring
type: gcp_monitoring
enabled: true
credentials:
project_id: ${GCP_PROJECT_ID} # Set via environment variable
# Uses ADC (Application Default Credentials) - no file needed if gcloud auth is set
interval: 30
metrics:
# GKE container metrics (gauges work best)
- kubernetes.io/container/cpu/limit_utilization
- kubernetes.io/container/memory/limit_utilization
- kubernetes.io/container/memory/used_bytes
# GKE node metrics
- kubernetes.io/node/cpu/allocatable_utilization
- kubernetes.io/node/memory/allocatable_utilization
# Agent settings
batch_size: 100
flush_interval: 10
log_level: INFO