|
3 | 3 | TOKEN=$(oc create token prometheus-user-workload -n openshift-user-workload-monitoring)
|
4 | 4 | THANOS_QUERIER_HOST=$(oc get route thanos-querier -n openshift-monitoring -o json | jq -r '.spec.host')
|
5 | 5 |
|
6 |
| -#Check metrics for OpenTelemetry collector instance. |
7 |
| -metrics="otelcol_process_uptime otelcol_process_runtime_total_sys_memory_bytes otelcol_process_memory_rss otelcol_exporter_sent_spans otelcol_process_cpu_seconds otelcol_process_memory_rss otelcol_process_runtime_heap_alloc_bytes otelcol_process_runtime_total_alloc_bytes otelcol_process_runtime_total_sys_memory_bytes otelcol_process_uptime otelcol_receiver_accepted_spans otelcol_receiver_refused_spans opentelemetry_collector_info opentelemetry_collector_exporters opentelemetry_collector_receivers" |
| 6 | +# Check metrics for OpenTelemetry collector instance. |
| 7 | +metrics="otelcol_process_uptime otelcol_process_runtime_total_sys_memory_bytes otelcol_process_memory_rss otelcol_exporter_sent_spans otelcol_process_cpu_seconds otelcol_process_memory_rss otelcol_process_runtime_heap_alloc_bytes otelcol_process_runtime_total_alloc_bytes otelcol_process_runtime_total_sys_memory_bytes otelcol_process_uptime otelcol_receiver_accepted_spans otelcol_receiver_refused_spans controller_runtime_reconcile_time_seconds_count{controller=\"opentelemetrycollector\"} controller_runtime_reconcile_total{controller=\"opentelemetrycollector\",result=\"success\"} workqueue_work_duration_seconds_count{controller=\"opentelemetrycollector\",name=\"opentelemetrycollector\"}" |
8 | 8 |
|
9 | 9 | for metric in $metrics; do
|
10 |
| -query="$metric" |
11 |
| -count=0 |
| 10 | + query="$metric" |
| 11 | + count=0 |
12 | 12 |
|
13 |
| -# Keep fetching and checking the metrics until metrics with value is present. |
14 |
| -while [[ $count -eq 0 ]]; do |
15 |
| - response=$(curl -k -H "Authorization: Bearer $TOKEN" -H "Content-type: application/json" "https://$THANOS_QUERIER_HOST/api/v1/query?query=$query") |
16 |
| - count=$(echo "$response" | jq -r '.data.result | length') |
| 13 | + # Keep fetching and checking the metrics until metrics with value is present. |
| 14 | + while [[ $count -eq 0 ]]; do |
| 15 | + response=$(curl -k -H "Authorization: Bearer $TOKEN" --data-urlencode "query=$query" "https://$THANOS_QUERIER_HOST/api/v1/query") |
| 16 | + count=$(echo "$response" | jq -r '.data.result | length' | tr -d '\n' | tr -d ' ') |
17 | 17 |
|
18 |
| - if [[ $count -eq 0 ]]; then |
19 |
| - echo "No metric '$metric' with value present. Retrying..." |
20 |
| - sleep 5 # Wait for 5 seconds before retrying |
| 18 | + if [[ "$count" -eq 0 ]]; then |
| 19 | + echo "No metric '$metric' with value present. Retrying..." |
| 20 | + sleep 5 # Wait for 5 seconds before retrying |
21 | 21 | else
|
22 |
| - echo "Metric '$metric' with value is present." |
| 22 | + echo "Metric '$metric' with value is present." |
23 | 23 | fi
|
24 | 24 | done
|
25 | 25 | done
|
0 commit comments