summaryrefslogtreecommitdiff
path: root/grafana/nodepool-packethost.yaml
blob: 70dfb43151cd38cc116cbfb9a7c837f83f0fb1f1 (plain)
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
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
#
# NOTE: EDIT THE TEMPLATE FILE AND RUN create-nodepool.sh
#

dashboard:
  title: 'Nodepool: Packethost'
  templating:
    - name: region
      includeAll: true
      multi: true
      query: stats.gauges.nodepool.provider.packethost-*
      refresh: true
      type: query
  rows:
    - title: Description
      height: 150px
      panels:
        - title: Description
          content: |
            Packethost Nodepool Status
            ==========================

            This dashboard monitors the status of the nodepool environment for Packethost.

            **This dashboard is managed by [Grafyaml](http://docs.openstack.org/infra/system-config/grafyaml.html).**
            If you would like to make changes to this dashboard, please see the template in the `grafana` directory in
            [project-config](https://git.openstack.org/cgit/openstack-infra/project-config/tree/grafana/nodepool.template).

          type: text

    - title: Nodes
      showTitle: true
      height: 150px
      panels:
        - title: Building
          span: 3
          sparkline:
            full: true
            show: true
          targets:
            - target: sumSeries(stats.gauges.nodepool.provider.$region.nodes.building)
          type: singlestat
          valueName: current
        - title: Ready
          span: 3
          sparkline:
            full: true
            show: true
          targets:
            - target: sumSeries(stats.gauges.nodepool.provider.$region.nodes.ready)
          type: singlestat
          valueName: current
        - title: In Use
          span: 3
          sparkline:
            full: true
            show: true
          targets:
            - target: sumSeries(stats.gauges.nodepool.provider.$region.nodes.in-use)
          type: singlestat
          valueName: current
        - title: Deleting
          span: 3
          sparkline:
            full: true
            show: true
          targets:
              - target: sumSeries(stats.gauges.nodepool.provider.$region.nodes.deleting)
          type: singlestat
          valueName: current

    - title: Test Nodes
      height: 400px
      panels:
        - title: Test Node History - $region
          type: graph
          span: 12
          stack: true
          repeat: region
          minSpan: 4
          tooltip:
            value_type: individual
          yaxes:
            - label: "nodes"
            - show: false
          targets:
            - target: alias(sumSeries(stats.gauges.nodepool.provider.$region.nodes.building), 'Building')
            - target: alias(sumSeries(stats.gauges.nodepool.provider.$region.nodes.ready), 'Available')
            - target: alias(sumSeries(stats.gauges.nodepool.provider.$region.nodes.in-use), 'In Use')
            - target: alias(sumSeries(stats.gauges.nodepool.provider.$region.nodes.used), 'Used')
            - target: alias(sumSeries(stats.gauges.nodepool.provider.$region.nodes.deleting), 'Deleting')
            - target: alias(sumSeries(stats.gauges.nodepool.provider.$region.max_servers), 'Max')
          seriesOverrides:
            - alias: Max
              stack: False


    - title: Node Launches
      showTitle: true
      height: 250px
      panels:
        - title: Ready Node Launch Attempts
          type: graph
          span: 4
          lines: false
          bars: true
          nullPointMode: null as zero
          yaxes:
            - label: "events / min"
            - show: false
          targets:
            - target: aliasSub(summarize(stats_counts.nodepool.launch.provider.$region.ready, '1m'), '.*stats_counts.nodepool.launch.provider.(.*).ready.*', '\1')
        - title: Time to Ready
          type: graph
          span: 4
          lines: false
          bars: true
          nullPointMode: null as zero
          yaxes:
            - label: "time"
              format: ms
            - show: false
          targets:
            - target: aliasByNode(stats.timers.nodepool.launch.provider.$region.ready.mean, 5)
        - title: Error Node Launch Attempts
          type: graph
          span: 4
          lines: false
          bars: true
          nullPointMode: null as zero
          yaxes:
            - label: "events / min"
            - show: false
          targets:
            - target: alias(smartSummarize(sumSeries(stats_counts.nodepool.launch.provider.$region.error.*), '1m'), "All Errors")

    - title: API Operations
      showTitle: true
      height: 250px
      panels:
        - title: Create Server
          type: graph
          lines: true
          nullPointMode: connected
          span: 4
          yaxes:
            - format: ms
              label: Time
            - show: false
          targets:
            - target: aliasByNode(stats.timers.nodepool.task.$region.ComputePostServers.mean, 4)
        - title: Get Server
          type: graph
          span: 4
          lines: true
          nullPointMode: connected
          span: 4
          yaxes:
            - format: ms
              label: Time
            - show: false
          targets:
            - target: aliasByNode(stats.timers.nodepool.task.$region.ComputePostServers.mean, 4)
        - title: Delete Server
          type: graph
          span: 4
          lines: true
          nullPointMode: connected
          span: 4
          yaxes:
            - format: ms
              label: Time
            - show: false
          targets:
            - target: aliasByNode(stats.timers.nodepool.task.$region.ComputePostServers.mean, 4)
        - title: List Servers
          type: graph
          lines: true
          nullPointMode: connected
          span: 4
          yaxes:
            - format: ms
              label: Time
            - show: false
          targets:
            - target: aliasByNode(stats.timers.nodepool.task.$region.ComputePostServers.mean, 4)
        - title: Get Limits
          type: graph
          lines: true
          nullPointMode: connected
          span: 4
          yaxes:
            - format: ms
              label: Time
            - show: false
          targets:
            - target: aliasByNode(stats.timers.nodepool.task.$region.ComputePostServers.mean, 4)