-
Notifications
You must be signed in to change notification settings - Fork 3
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Merge pull request #101 from deefreak/deepakfork/ossDocs
Metrics docs added and few changes to installation doc
- Loading branch information
Showing
6 changed files
with
73 additions
and
23 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,50 @@ | ||
## Ottoscalr metrics | ||
|
||
| Metric name | Metric type | Description | Labels/tags | | ||
|-----------|------|---------|-------------| | ||
| `ottoscalr_policyreco_current_policy_max` | gauge | Current Max replica count to be applied to the HPA | `policyreco`=<policyrecommendation-name> <br> `namespace`=<policyrecommendation-namespace> | | ||
| `ottoscalr_policyreco_current_policy_min` | gauge | Current Min replica count to be applied to the HPA | `policyreco`=<policyrecommendation-name> <br> `namespace`=<policyrecommendation-namespace> | | ||
| `ottoscalr_policyreco_current_policy_utilization` | gauge | Current CPU utilization threshold to be applied to the HPA | `policyreco`=<policyrecommendation-name> <br> `namespace`=<policyrecommendation-namespace> | | ||
| `ottoscalr_policyreco_target_policy_max` | gauge | Max replica count recommended to be applied to the HPA. | `policyreco`=<policyrecommendation-name> <br> `namespace`=<policyrecommendation-namespace> | | ||
| `ottoscalr_policyreco_target_policy_min` | gauge | Min replica count recommended to be applied to the HPA. | `policyreco`=<policyrecommendation-name> <br> `namespace`=<policyrecommendation-namespace> | | ||
| `ottoscalr_policyreco_target_policy_max` | gauge | CPU utilization threshold recommended to be applied to the HPA. | `policyreco`=<policyrecommendation-name> <br> `namespace`=<policyrecommendation-namespace> | | ||
| `ottoscalr_policyreco_workload_info` | gauge | Information about the policyrecommendation | `policyreco`=<policyrecommendation-name> <br> `namespace`=<policyrecommendation-namespace> <br> `workload`=<policyrecommendation-workload> <br> `workloadKind`=<workloadType(Deployment,Rollout)> | | ||
| `ottoscalr_policyreco_reconciler_conditions` | gauge | Metric for checking the status of different conditions of `.policyrecommendation.status` | `policyreco`=<policyrecommendation-name> <br> `namespace`=<policyrecommendation-namespace> <br> `status`=<True,False> <br> `type`=<RecoTaskProgress,TargetRecoAchieved> | | ||
| `ottoscalr_policyreco_reconciler_task_progress_reason` | gauge | Metric for checking the reason for condition type `RecoTaskProgress`. | `policyreco`=<policyrecommendation-name> <br> `namespace`=<policyrecommendation-namespace> <br> `reason`=<RecoTaskErrored,RecoTaskRecommendationGenerated; | | ||
| `ottoscalr_policyreco_reconciled_count` | counter | Number of times a policyrecommendation has been reconciled | `policyreco`=<policyrecommendation-name> <br> `namespace`=<policyrecommendation-namespace> | | ||
| `ottoscalr_policyreco_reconciler_errored_count` | counter | Number of times a policyrecommendation's reconciliation has errored | `policyreco`=<policyrecommendation-name> <br> `namespace`=<policyrecommendation-namespace> | | ||
| `ottoscalr_policyreco_reconciler_targetreco_slo_days` | histogram | Time taken for a policy reco to achieve the target recommendation in days | `policyreco`=<policyrecommendation-name> <br> `namespace`=<policyrecommendation-namespace> | | ||
| `ottoscalr_minimum_percentage_of_datapoints_present` | gauge | If minimum percentage of datapoints is present to generate recommendation. | `workload`=<deployment-name> <br> `namespace`=<policyrecommendation-namespace> <br> `reason`=<RecoTaskErrored,RecoTaskRecommendationGenerated; | | ||
| `ottoscalr_p8s_query_error_count` | counter | Error counter for a query made to prometheus | `query`=<query-type> <br> `p8sinstance`=<prometheusinstance-name> | | ||
| `ottoscalr_p8s_query_success_count` | counter | Success counter for a query made to prometheus | `query`=<query-type> <br> `p8sinstance`=<prometheusinstance-name> | | ||
| `ottoscalr_p8s_concurrent_queries` | gauge | Number of concurrent p8s api calls for a query | `query`=<query-type> <br> `p8sinstance`=<prometheusinstance-name> | | ||
| `ottoscalr_datapoints_fetched_by_p8s_instance` | gauge | Number of datapoints fetched for a query for a workload from a prometheus instance | `query`=<query-type> <br> `p8sinstance`=<prometheusinstance-name> <br> `workload`=<deployment-name> <br> `namespace`=<policyrecommendation-namespace> | | ||
| `ottoscalr_total_datapoints_fetched` | gauge | Total Number of datapoints fetched for a query for a workload after aggregating from all the prometheus instances | `query`=<query-type> <br> `workload`=<deployment-name> <br> `namespace`=<policyrecommendation-namespace> | | ||
| `ottoscalr_prometheus_scraper_query_latency` | histogram | Time to execute prometheus scraper query in seconds | `query`=<query-type> <br> `p8sinstance`=<prometheusinstance-name> <br> `workload`=<deployment-name> <br> `namespace`=<policyrecommendation-namespace> | | ||
| `ottoscalr_get_avg_cpu_utilization_query_latency_seconds` | histogram | Total Time to execute utilization datapoint query in seconds | `policyreco`=<policyrecommendation-name> <br> `namespace`=<policyrecommendation-namespace> <br> `workload`=<deployment-name> <br> `workloadKind`=<workloadType(Deployment,Rollout)> | | ||
| `ottoscalr_get_reco_generation_latency_seconds` | histogram | Total time to generate policyrecommendation for a workload once it's execution is started | `policyreco`=<policyrecommendation-name> <br> `namespace`=<policyrecommendation-namespace> <br> `workload`=<deployment-name> <br> `workloadKind`=<workloadType(Deployment,Rollout)> | | ||
| `ottoscalr_breachmonitor_breached` | gauge | If a particular workload has breached the cpu redline or not | `policyreco`=<policyrecommendation-name> <br> `namespace`=<policyrecommendation-namespace> <br> `workload`=<deployment-name> <br> `workloadKind`=<workloadType(Deployment,Rollout)> | | ||
| `ottoscalr_breachmonitor_execution_rate` | gauge | Rate of breachmonitor executions for the workloads | | | ||
| `ottoscalr_concurrent_breachmonitor_executions` | counter | Number of concurrent breachmonitor executions for the workloads | | | ||
| `ottoscalr_breachmonitor_mitigation_latency_seconds` | histogram | Time to mitigate breach in seconds for a workload | `policyreco`=<policyrecommendation-name> <br> `namespace`=<policyrecommendation-namespace> <br> `workload`=<deployment-name> <br> `workloadKind`=<workloadType(Deployment,Rollout)> | | ||
| `ottoscalr_hpaenforcer_reconciled_count` | counter | Number of times a policyrecommendation has been reconciled by HPAEnforcer | `policyreco`=<policyrecommendation-name> <br> `namespace`=<policyrecommendation-namespace> | | ||
|
||
|
||
### Ottoscalr Controller Metrics | ||
|
||
All the kubebuilder controller metrics as mentioned here:- https://book.kubebuilder.io/reference/metrics-reference are available for ottoscalr controllers. | ||
All the metrics should be prefixed with `ottoscalr_` . | ||
|
||
Following are the names of controllers:- | ||
<b>PolicyRecommendationRegistrar</b>, | ||
<b>RecoWorkflowController</b>, | ||
<b>HPAEnforcementController</b>, | ||
<b>PolicyWatcher</b>, | ||
<b>DeploymentTriggerController</b> | ||
|
||
|
||
|
||
|
||
|
||
|
||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters