Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -67,6 +67,7 @@ NOTE: As semantic versioning states all 0.y.z releases can contain breaking chan
- [#269](https://github.com/kobsio/kobs/pull/269): [applications] :warning: _Breaking change:_ :warning: Improve topology graph, by allowing custom styles for applications.
- [#275](https://github.com/kobsio/kobs/pull/275): [azure] Improve cost management integration by adjusting the chart style and allowing the usage in dashboard panels.
- [#276](https://github.com/kobsio/kobs/pull/276): [resources] :warning: _Breaking change:_ :warning: Add new `verbs` property for resource permissions, to allow administrators more control about what users can do.
- [#279](https://github.com/kobsio/kobs/pull/279): [dashboards] :warning: _Breaking change:_ :warning: Refactor defaults, placeholders and variables handling.

## [v0.7.0](https://github.com/kobsio/kobs/releases/tag/v0.7.0) (2021-11-19)

Expand Down
2 changes: 0 additions & 2 deletions deploy/demo/bookinfo/details-application.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -28,8 +28,6 @@ spec:
- name: resources
namespace: kobs
title: Resources in the bookinfo namespace
placeholders:
namespace: bookinfo
- name: resource-usage
namespace: kobs
title: Resource Usage
Expand Down
24 changes: 12 additions & 12 deletions deploy/demo/kobs/base/dashboards/istio-http.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -28,15 +28,15 @@ spec:
options:
type: labelValues
label: destination_workload
query: istio_requests_total{reporter="{% .var_reporter %}", app=~"{{ .app }}", destination_workload_namespace=~"{{ .namespace }}"}
query: istio_requests_total{reporter="{% .var_reporter %}", app=~"{% .app %}", destination_workload_namespace=~"{% .namespace %}"}
- name: var_source_workload_namespace
label: Source Workload Namespace
plugin:
name: prometheus
options:
type: labelValues
label: source_workload_namespace
query: istio_requests_total{reporter="{% .var_reporter %}", destination_workload="{% .var_workload %}", destination_workload_namespace=~"{{ .namespace }}"}
query: istio_requests_total{reporter="{% .var_reporter %}", destination_workload="{% .var_workload %}", destination_workload_namespace=~"{% .namespace %}"}
allowAll: true
- name: var_source_workload
label: Source Workload
Expand All @@ -45,7 +45,7 @@ spec:
options:
type: labelValues
label: source_workload
query: istio_requests_total{reporter="{% .var_reporter %}", destination_workload="{% .var_workload %}", destination_workload_namespace=~"{{ .namespace }}", source_workload_namespace=~"{% .var_source_workload_namespace %}"}
query: istio_requests_total{reporter="{% .var_reporter %}", destination_workload="{% .var_workload %}", destination_workload_namespace=~"{% .namespace %}", source_workload_namespace=~"{% .var_source_workload_namespace %}"}
allowAll: true
rows:
- size: 1
Expand All @@ -58,7 +58,7 @@ spec:
unit: req/s
type: sparkline
queries:
- query: round(sum(irate(istio_requests_total{reporter="{% .var_reporter %}",destination_workload_namespace=~"{{ .namespace }}",destination_workload=~"{% .var_workload %}"}[5m])), 0.001)
- query: round(sum(irate(istio_requests_total{reporter="{% .var_reporter %}",destination_workload_namespace=~"{% .namespace %}",destination_workload=~"{% .var_workload %}"}[5m])), 0.001)
- title: Incoming Success Rate
colSpan: 6
plugin:
Expand All @@ -67,7 +67,7 @@ spec:
unit: "%"
type: sparkline
queries:
- query: sum(irate(istio_requests_total{reporter="{% .var_reporter %}",destination_workload_namespace=~"{{ .namespace }}",destination_workload=~"{% .var_workload %}",response_code!~"5.*"}[5m])) / sum(irate(istio_requests_total{reporter="{% .var_reporter %}",destination_workload_namespace=~"{{ .namespace }}",destination_workload=~"{% .var_workload %}"}[5m])) * 100
- query: sum(irate(istio_requests_total{reporter="{% .var_reporter %}",destination_workload_namespace=~"{% .namespace %}",destination_workload=~"{% .var_workload %}",response_code!~"5.*"}[5m])) / sum(irate(istio_requests_total{reporter="{% .var_reporter %}",destination_workload_namespace=~"{% .namespace %}",destination_workload=~"{% .var_workload %}"}[5m])) * 100
- size: 2
panels:
- title: Request Duration
Expand All @@ -79,11 +79,11 @@ spec:
type: line
queries:
- label: P50
query: histogram_quantile(0.50, sum(irate(istio_request_duration_milliseconds_bucket{reporter="{% .var_reporter %}",destination_workload_namespace=~"{{ .namespace }}",destination_workload=~"{% .var_workload %}"}[1m])) by (le))
query: histogram_quantile(0.50, sum(irate(istio_request_duration_milliseconds_bucket{reporter="{% .var_reporter %}",destination_workload_namespace=~"{% .namespace %}",destination_workload=~"{% .var_workload %}"}[1m])) by (le))
- label: P90
query: histogram_quantile(0.90, sum(irate(istio_request_duration_milliseconds_bucket{reporter="{% .var_reporter %}",destination_workload_namespace=~"{{ .namespace }}",destination_workload=~"{% .var_workload %}"}[1m])) by (le))
query: histogram_quantile(0.90, sum(irate(istio_request_duration_milliseconds_bucket{reporter="{% .var_reporter %}",destination_workload_namespace=~"{% .namespace %}",destination_workload=~"{% .var_workload %}"}[1m])) by (le))
- label: P99
query: histogram_quantile(0.99, sum(irate(istio_request_duration_milliseconds_bucket{reporter="{% .var_reporter %}",destination_workload_namespace=~"{{ .namespace }}",destination_workload=~"{% .var_workload %}"}[1m])) by (le))
query: histogram_quantile(0.99, sum(irate(istio_request_duration_milliseconds_bucket{reporter="{% .var_reporter %}",destination_workload_namespace=~"{% .namespace %}",destination_workload=~"{% .var_workload %}"}[1m])) by (le))
- title: Inbound Workloads
size: 3
panels:
Expand All @@ -97,9 +97,9 @@ spec:
legend: table
queries:
- label: "{% .source_workload %}.{% .source_workload_namespace %} : {% .response_code %} (🔐 mTLS)"
query: round(sum(irate(istio_requests_total{connection_security_policy="mutual_tls", destination_workload_namespace=~"{{ .namespace }}", destination_workload=~"{% .var_workload %}", reporter="{% .var_reporter %}", source_workload=~"{% .var_source_workload %}", source_workload_namespace=~"{% .var_source_workload_namespace %}"}[5m])) by (source_workload, source_workload_namespace, response_code), 0.001)
query: round(sum(irate(istio_requests_total{connection_security_policy="mutual_tls", destination_workload_namespace=~"{% .namespace %}", destination_workload=~"{% .var_workload %}", reporter="{% .var_reporter %}", source_workload=~"{% .var_source_workload %}", source_workload_namespace=~"{% .var_source_workload_namespace %}"}[5m])) by (source_workload, source_workload_namespace, response_code), 0.001)
- label: "{% .source_workload %}.{% .source_workload_namespace %} : {% .response_code %}"
query: round(sum(irate(istio_requests_total{connection_security_policy!="mutual_tls", destination_workload_namespace=~"{{ .namespace }}", destination_workload=~"{% .var_workload %}", reporter="{% .var_reporter %}", source_workload=~"{% .var_source_workload %}", source_workload_namespace=~"{% .var_source_workload_namespace %}"}[5m])) by (source_workload, source_workload_namespace, response_code), 0.001)
query: round(sum(irate(istio_requests_total{connection_security_policy!="mutual_tls", destination_workload_namespace=~"{% .namespace %}", destination_workload=~"{% .var_workload %}", reporter="{% .var_reporter %}", source_workload=~"{% .var_source_workload %}", source_workload_namespace=~"{% .var_source_workload_namespace %}"}[5m])) by (source_workload, source_workload_namespace, response_code), 0.001)
- title: Incoming Success Rate (non-5xx responses) By Source
colSpan: 6
plugin:
Expand All @@ -110,6 +110,6 @@ spec:
legend: table
queries:
- label: "{% .source_workload %}.{% .source_workload_namespace %} (🔐 mTLS)"
query: sum(irate(istio_requests_total{reporter="{% .var_reporter %}", connection_security_policy="mutual_tls", destination_workload_namespace=~"{{ .namespace }}", destination_workload=~"{% .var_workload %}",response_code!~"5.*", source_workload=~"{% .var_source_workload %}", source_workload_namespace=~"{% .var_source_workload_namespace %}"}[5m])) by (source_workload, source_workload_namespace) / sum(irate(istio_requests_total{reporter="{% .var_reporter %}", connection_security_policy="mutual_tls", destination_workload_namespace=~"{{ .namespace }}", destination_workload=~"{% .var_workload %}", source_workload=~"{% .var_source_workload %}", source_workload_namespace=~"{% .var_source_workload_namespace %}"}[5m])) by (source_workload, source_workload_namespace) * 100
query: sum(irate(istio_requests_total{reporter="{% .var_reporter %}", connection_security_policy="mutual_tls", destination_workload_namespace=~"{% .namespace %}", destination_workload=~"{% .var_workload %}",response_code!~"5.*", source_workload=~"{% .var_source_workload %}", source_workload_namespace=~"{% .var_source_workload_namespace %}"}[5m])) by (source_workload, source_workload_namespace) / sum(irate(istio_requests_total{reporter="{% .var_reporter %}", connection_security_policy="mutual_tls", destination_workload_namespace=~"{% .namespace %}", destination_workload=~"{% .var_workload %}", source_workload=~"{% .var_source_workload %}", source_workload_namespace=~"{% .var_source_workload_namespace %}"}[5m])) by (source_workload, source_workload_namespace) * 100
- label: "{% .source_workload %}.{% .source_workload_namespace %}"
query: sum(irate(istio_requests_total{reporter="{% .var_reporter %}", connection_security_policy!="mutual_tls", destination_workload_namespace=~"{{ .namespace }}", destination_workload=~"{% .var_workload %}",response_code!~"5.*", source_workload=~"{% .var_source_workload %}", source_workload_namespace=~"{% .var_source_workload_namespace %}"}[5m])) by (source_workload, source_workload_namespace) / sum(irate(istio_requests_total{reporter="{% .var_reporter %}", connection_security_policy!="mutual_tls", destination_workload_namespace=~"{{ .namespace }}", destination_workload=~"{% .var_workload %}", source_workload=~"{% .var_source_workload %}", source_workload_namespace=~"{% .var_source_workload_namespace %}"}[5m])) by (source_workload, source_workload_namespace) * 100
query: sum(irate(istio_requests_total{reporter="{% .var_reporter %}", connection_security_policy!="mutual_tls", destination_workload_namespace=~"{% .namespace %}", destination_workload=~"{% .var_workload %}",response_code!~"5.*", source_workload=~"{% .var_source_workload %}", source_workload_namespace=~"{% .var_source_workload_namespace %}"}[5m])) by (source_workload, source_workload_namespace) / sum(irate(istio_requests_total{reporter="{% .var_reporter %}", connection_security_policy!="mutual_tls", destination_workload_namespace=~"{% .namespace %}", destination_workload=~"{% .var_workload %}", source_workload=~"{% .var_source_workload %}", source_workload_namespace=~"{% .var_source_workload_namespace %}"}[5m])) by (source_workload, source_workload_namespace) * 100
2 changes: 1 addition & 1 deletion deploy/demo/kobs/base/dashboards/istio-logs.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -22,7 +22,7 @@ spec:
showChart: true
queries:
- name: Istio Logs
query: "kubernetes.namespace: {{ .namespace }} AND kubernetes.labels.app: {{ .app }} AND kubernetes.container.name: istio-proxy AND _exists_: content.method"
query: "kubernetes.namespace: {% .namespace %} AND kubernetes.labels.app: {% .app %} AND kubernetes.container.name: istio-proxy AND _exists_: content.method"
fields:
- "kubernetes.pod.name"
- "content.authority"
Expand Down
2 changes: 1 addition & 1 deletion deploy/demo/kobs/base/dashboards/pod-logs.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -22,7 +22,7 @@ spec:
showChart: true
queries:
- name: Pod Logs
query: "kubernetes.namespace: {{ .namespace }} AND kubernetes.pod.name: {{ .name }}"
query: "kubernetes.namespace: {% .namespace %} AND kubernetes.pod.name: {% .name %}"
fields:
- "kubernetes.container.name"
- "message"
Loading