Documentation ¶
Index ¶
Constants ¶
View Source
const ( // WorkloadCpuUsageExprTemplate is used to query workload cpu usage by promql, param is namespace,workload-name,common condition,duration str WorkloadCpuUsageExprTemplate = `sum(irate(container_cpu_usage_seconds_total{container!="",image!="",container!="POD",namespace="%s",pod=~"^%s-.*$",%s}[%s]))` // WorkloadMemUsageExprTemplate is used to query workload mem usage by promql, param is namespace, workload-name,common condition WorkloadMemUsageExprTemplate = `sum(container_memory_working_set_bytes{container!="",image!="",container!="POD",namespace="%s",pod=~"^%s-.*$",%s})` // following is node exporter metric for node cpu/memory usage // NodeCpuUsageExprTemplate is used to query node cpu usage by promql, param is node name,common condition,node name, common condition, which prometheus scrape, duration str NodeCpuUsageExprTemplate = `` /* 172-byte string literal not displayed */ // NodeMemUsageExprTemplate is used to query node cpu memory by promql, param is node name, node name which prometheus scrape NodeMemUsageExprTemplate = `sum(node_memory_MemTotal_bytes{instance=~"(%s)(:\\d+)?",%s} - node_memory_MemAvailable_bytes{instance=~"(%s)(:\\d+)?",%s})` // PodCpuUsageExprTemplate is used to query pod cpu usage by promql, param is namespace,pod, common condition, duration str PodCpuUsageExprTemplate = `sum(irate(container_cpu_usage_seconds_total{container!="POD",namespace="%s",pod="%s",%s}[%s]))` // PodMemUsageExprTemplate is used to query pod cpu usage by promql, param is namespace,pod PodMemUsageExprTemplate = `sum(container_memory_working_set_bytes{container!="POD",namespace="%s",pod="%s",%s})` // ContainerCpuUsageExprTemplate is used to query container cpu usage by promql, param is namespace,pod,container, common condition, duration str ContainerCpuUsageExprTemplate = `irate(container_cpu_usage_seconds_total{container!="POD",namespace="%s",pod=~"^%s.*$",container="%s",%s}[%s])` // ContainerMemUsageExprTemplate is used to query container cpu usage by promql, param is namespace,pod,container ContainerMemUsageExprTemplate = `container_memory_working_set_bytes{container!="POD",namespace="%s",pod=~"^%s.*$",container="%s",%s}` /** NOTE: following metrics require kube-state-metrics on your monitoring system */ // container, resource, workloadname,namespace,common condition, workloadkind,workloadname,namespace,common condition ContainerResourceRequestExprTemplate = `` /* 376-byte string literal not displayed */ // container, resource, workloadname,namespace,common condition, workloadkind,workloadname,namespace, common condition ContainerResourceLimitExprTemplate = `` /* 374-byte string literal not displayed */ // container, resource, deploymentname,namespace,common condition, deploymentname,namespace,common condition DeploymentContainerResourceRequestExprTemplate = `` /* 448-byte string literal not displayed */ // container, resource, deploymentname,namespace,common condition, deploymentname,namespace,common condition DeploymentContainerResourceLimitExprTemplate = `` /* 446-byte string literal not displayed */ // resource,workloadname,namespace,common condition, workloadname,namespace, common condition DeploymentResourceRequestExprTemplate = `` /* 469-byte string literal not displayed */ // resource,workloadname,namespace,common condition,workloadname,namespace, common condition DeploymentResourceLimitExprTemplate = `` /* 467-byte string literal not displayed */ // WorkloadResourceRequestExprTemplate used to query workload request, // param is resource,workloadname,namespace,common condition, workloadkind,workloadname,namespace, common condition WorkloadResourceRequestExprTemplate = `` /* 396-byte string literal not displayed */ // WorkloadResourceLimitExprTemplate used to query workload limit, param is resource,workloadname,namespace,common condition,workloadkind,workloadname,namespace,common condition WorkloadResourceLimitExprTemplate = `` /* 394-byte string literal not displayed */ // StatefulSetPlusReplicasExprTemplate replicas, param is namespace, name, common condition StatefulSetPlusReplicasExprTemplate = `` /* 221-byte string literal not displayed */ // StatefulSetReplicasExprTemplate replicas, param is namespace, name,common condition StatefulSetReplicasExprTemplate = `` /* 213-byte string literal not displayed */ // DeploymentReplicasExprTemplate replicas, param is namespace, name,common condition DeploymentReplicasExprTemplate = `` /* 209-byte string literal not displayed */ // DaemonSetReplicasExprTemplate replicas, param is namespace, name,common condition DaemonSetReplicasExprTemplate = `` /* 203-byte string literal not displayed */ )
todo: later we change these templates to configurable like prometheus-adapter
Variables ¶
This section is empty.
Functions ¶
func NewPromQueryBuilder ¶
func NewPromQueryBuilder(metric *metricquery.Metric) querybuilder.Builder
Types ¶
This section is empty.
Click to show internal directories.
Click to hide internal directories.