saba-webhook-gateway 1.1.0

Sign up to get free protection for your applications and to get access to all the features.
@@ -0,0 +1,580 @@
1
+ {
2
+ "$id": "https://mackerel.io/json/monitor-create.json",
3
+ "$schema": "https://json-schema.org/draft/2019-09/schema",
4
+ "additionalProperties": false,
5
+ "default": {},
6
+ "definitions": {
7
+ "imageUrl": {
8
+ "default": null,
9
+ "examples": [
10
+ null,
11
+ "https://mackerel.io/embed/public/alert/RANDOM_GRAPH_URL.png"
12
+ ],
13
+ "title": "グラフ画像URL",
14
+ "type": [
15
+ "null",
16
+ "string"
17
+ ]
18
+ },
19
+ "memo": {
20
+ "examples": [
21
+ "MY_MEMO",
22
+ "MY_MEMO\nMY_MEMO2\nMY_MEMO3"
23
+ ],
24
+ "title": "メモ",
25
+ "type": "string"
26
+ },
27
+ "user": {
28
+ "additionalProperties": false,
29
+ "default": null,
30
+ "examples": [
31
+ null
32
+ ],
33
+ "properties": {
34
+ "id": {
35
+ "examples": [
36
+ "USER_ID"
37
+ ],
38
+ "title": "ユーザーID",
39
+ "type": "string"
40
+ },
41
+ "screenName": {
42
+ "examples": [
43
+ "MY_NAME",
44
+ "MY_EMAIL_ADDRESS"
45
+ ],
46
+ "title": "表示名",
47
+ "type": "string"
48
+ }
49
+ },
50
+ "title": "ユーザー情報",
51
+ "type": [
52
+ "null",
53
+ "object"
54
+ ]
55
+ }
56
+ },
57
+ "examples": [
58
+ {
59
+ "event": "monitorCreate",
60
+ "imageUrl": null,
61
+ "monitor": {
62
+ "critical": 50,
63
+ "duration": 3,
64
+ "excludeScopes": [],
65
+ "id": "MONITOR_ID",
66
+ "isMute": false,
67
+ "maxCheckAttempts": 1,
68
+ "memo": "MY_MEMO",
69
+ "metric": "MY_METRIC",
70
+ "name": "MY_MONITOR_HOST",
71
+ "notificationInterval": 60,
72
+ "operator": ">",
73
+ "scopes": [
74
+ "MY_SERVICE"
75
+ ],
76
+ "type": "host",
77
+ "warning": 10
78
+ },
79
+ "orgName": "MY_ORG",
80
+ "user": {
81
+ "id": "USER_ID",
82
+ "screenName": "MY_EMAIL_ADDRESS"
83
+ }
84
+ },
85
+ {
86
+ "event": "monitorCreate",
87
+ "imageUrl": null,
88
+ "monitor": {
89
+ "critical": 2,
90
+ "duration": 1,
91
+ "id": "MONITOR_ID",
92
+ "isMute": false,
93
+ "maxCheckAttempts": 1,
94
+ "memo": "MEMO1\nMEMO2",
95
+ "metric": "MY_METRIC",
96
+ "missingDurationCritical": 120,
97
+ "missingDurationWarning": 60,
98
+ "name": "MY_SERVICE - MY_METRIC",
99
+ "notificationInterval": 60,
100
+ "operator": ">",
101
+ "service": "MY_SERVICE",
102
+ "type": "service",
103
+ "warning": 1
104
+ },
105
+ "orgName": "MY_ORG",
106
+ "user": {
107
+ "id": "USER_ID",
108
+ "screenName": "MY_EMAIL_ADDRESS"
109
+ }
110
+ },
111
+ {
112
+ "event": "monitorCreate",
113
+ "imageUrl": null,
114
+ "monitor": {
115
+ "critical": 5,
116
+ "expression": "host(HOST_ID, loadavg1)",
117
+ "id": "MONITOR_ID",
118
+ "isMute": false,
119
+ "memo": "",
120
+ "name": "MY_MONITOR_EXPRESSION",
121
+ "notificationInterval": 60,
122
+ "operator": ">",
123
+ "type": "expression",
124
+ "warning": 1
125
+ },
126
+ "orgName": "MY_ORG",
127
+ "user": {
128
+ "id": "USER_ID",
129
+ "screenName": "MY_EMAIL_ADDRESS"
130
+ }
131
+ },
132
+ {
133
+ "event": "monitorCreate",
134
+ "imageUrl": null,
135
+ "monitor": {
136
+ "criticalSensitivity": "insensitive",
137
+ "id": "MONITOR_ID",
138
+ "isMute": false,
139
+ "maxCheckAttempts": 3,
140
+ "memo": "",
141
+ "name": "MY_MONITOR_ANOMALY",
142
+ "notificationInterval": 60,
143
+ "scopes": [
144
+ "MY_SERVICE: MY_ROLE"
145
+ ],
146
+ "type": "anomalyDetection",
147
+ "warningSensitivity": "sensitive"
148
+ },
149
+ "orgName": "MY_ORG",
150
+ "user": {
151
+ "id": "USER_ID",
152
+ "screenName": "MY_EMAIL_ADDRESS"
153
+ }
154
+ },
155
+ {
156
+ "event": "monitorCreate",
157
+ "imageUrl": null,
158
+ "monitor": {
159
+ "alertStatusOnGone": "CRITICAL",
160
+ "excludeScopes": [
161
+ "MY_SERVICE: MY_EXCLUDE_ROLE"
162
+ ],
163
+ "id": "MONITOR_ID",
164
+ "isMute": false,
165
+ "name": "MY_MONITIOR_CONNECTIVITY",
166
+ "notificationInterval": 56,
167
+ "scopes": [
168
+ "MY_SERVICE"
169
+ ],
170
+ "type": "connectivity"
171
+ },
172
+ "orgName": "MY_ORG",
173
+ "user": {
174
+ "id": "USER_ID",
175
+ "screenName": "MY_EMAIL_ADDRESS"
176
+ }
177
+ },
178
+ {
179
+ "event": "monitorCreate",
180
+ "imageUrl": null,
181
+ "monitor": {
182
+ "certificationExpirationCritical": 30,
183
+ "certificationExpirationWarning": 60,
184
+ "containsString": "HELLO",
185
+ "followRedirect": true,
186
+ "headers": [
187
+ {
188
+ "name": "Cache-Control",
189
+ "value": "no-cache"
190
+ }
191
+ ],
192
+ "id": "MONITOR_ID",
193
+ "isMute": false,
194
+ "maxCheckAttempts": 3,
195
+ "method": "GET",
196
+ "name": "MY_MONITOR",
197
+ "notificationInterval": 60,
198
+ "requestBody": "{\"message\": \"example\"}",
199
+ "responseTimeCritical": 1000,
200
+ "responseTimeDuration": 3,
201
+ "responseTimeWarning": 500,
202
+ "service": "testservice",
203
+ "skipCertificateVerification": true,
204
+ "type": "external",
205
+ "url": "MY_URL"
206
+ },
207
+ "orgName": "MY_ORG",
208
+ "user": {
209
+ "id": "USER_ID",
210
+ "screenName": "MY_EMAIL_ADDRESS"
211
+ }
212
+ }
213
+ ],
214
+ "properties": {
215
+ "event": {
216
+ "enum": [
217
+ "monitorCreate"
218
+ ],
219
+ "title": "イベントの種類",
220
+ "type": "string"
221
+ },
222
+ "imageUrl": {
223
+ "$ref": "#/definitions/imageUrl"
224
+ },
225
+ "monitor": {
226
+ "additionalProperties": false,
227
+ "default": {},
228
+ "examples": [
229
+ {
230
+ "critical": 50,
231
+ "duration": 3,
232
+ "excludeScopes": [],
233
+ "id": "MONITOR_ID",
234
+ "isMute": false,
235
+ "maxCheckAttempts": 1,
236
+ "memo": "MY_MEMO",
237
+ "metric": "cpu%",
238
+ "name": "CPU %",
239
+ "notificationInterval": 60,
240
+ "operator": ">",
241
+ "scopes": [
242
+ "MY_SERVICE"
243
+ ],
244
+ "type": "host",
245
+ "warning": 10
246
+ }
247
+ ],
248
+ "properties": {
249
+ "alertStatusOnGone": {
250
+ "enum": [
251
+ "CRITICAL",
252
+ "WARNING"
253
+ ],
254
+ "title": "アラート発生時のアラートステータス(connectivity)",
255
+ "type": "string"
256
+ },
257
+ "certificationExpirationCritical": {
258
+ "examples": [
259
+ 60
260
+ ],
261
+ "title": "証明書有効期限Critical条件(外形監視)",
262
+ "type": "integer"
263
+ },
264
+ "certificationExpirationWarning": {
265
+ "examples": [
266
+ 30
267
+ ],
268
+ "title": "証明書有効期限Warning条件(外形監視)",
269
+ "type": "integer"
270
+ },
271
+ "containsString": {
272
+ "examples": [
273
+ "RESPONSE_STRING"
274
+ ],
275
+ "title": "レスポンスボディに含まれているべき文字列(外形監視)",
276
+ "type": "string"
277
+ },
278
+ "critical": {
279
+ "examples": [
280
+ 50
281
+ ],
282
+ "title": "Critical条件閾値(ホスト・サービス・式)",
283
+ "type": "integer"
284
+ },
285
+ "criticalSensitivity": {
286
+ "enum": [
287
+ "sensitive",
288
+ "normal",
289
+ "insensitive"
290
+ ],
291
+ "title": "センシティビティCritical条件(異常検知)",
292
+ "type": "string"
293
+ },
294
+ "duration": {
295
+ "examples": [
296
+ 1
297
+ ],
298
+ "title": "平均値監視",
299
+ "type": "integer"
300
+ },
301
+ "excludeScopes": {
302
+ "default": [],
303
+ "examples": [
304
+ []
305
+ ],
306
+ "items": {
307
+ "examples": [
308
+ "MY_SERVICE",
309
+ "MY_SERVICE: MY_ROLE"
310
+ ],
311
+ "title": "絞り込み除外対象サービス",
312
+ "type": "string"
313
+ },
314
+ "title": "絞り込み除外条件(ホスト)",
315
+ "type": "array"
316
+ },
317
+ "expression": {
318
+ "examples": [
319
+ "host(HOST_ID, loadavg5)"
320
+ ],
321
+ "title": "式の文字列(式)",
322
+ "type": "string"
323
+ },
324
+ "followRedirect": {
325
+ "default": true,
326
+ "examples": [
327
+ false
328
+ ],
329
+ "title": "レスポンスヘッダに従ってリダイレクト(外形監視)",
330
+ "type": "boolean"
331
+ },
332
+ "headers": {
333
+ "example": [
334
+ [
335
+ {
336
+ "name": "Cache-Control",
337
+ "value": "no-cache"
338
+ }
339
+ ]
340
+ ],
341
+ "items": {
342
+ "additionalProperties": false,
343
+ "examples": [
344
+ {
345
+ "name": "Cache-Control",
346
+ "value": "no-cache"
347
+ }
348
+ ],
349
+ "properties": {
350
+ "name": {
351
+ "examples": [
352
+ "Cache-Control"
353
+ ],
354
+ "title": "ヘッダ名",
355
+ "type": "string"
356
+ },
357
+ "value": {
358
+ "examples": [
359
+ "no-cache"
360
+ ],
361
+ "title": "ヘッダ値",
362
+ "type": "string"
363
+ }
364
+ },
365
+ "required": [
366
+ "name",
367
+ "value"
368
+ ],
369
+ "title": "ヘッダ情報",
370
+ "type": "object"
371
+ },
372
+ "title": "リクエストヘッダ(外形監視)",
373
+ "type": "array"
374
+ },
375
+ "id": {
376
+ "examples": [
377
+ "MONITOR_ID"
378
+ ],
379
+ "title": "監視ルールID",
380
+ "type": "string"
381
+ },
382
+ "isMute": {
383
+ "default": false,
384
+ "examples": [
385
+ false
386
+ ],
387
+ "title": "監視のミュート",
388
+ "type": "boolean"
389
+ },
390
+ "maxCheckAttempts": {
391
+ "examples": [
392
+ 3
393
+ ],
394
+ "title": "アラートまでの最大試行回数",
395
+ "type": "integer"
396
+ },
397
+ "memo": {
398
+ "$ref": "#/definitions/memo"
399
+ },
400
+ "method": {
401
+ "enum": [
402
+ "GET",
403
+ "POST",
404
+ "PUT",
405
+ "DELETE"
406
+ ],
407
+ "title": "HTTPメソッド(外形監視)",
408
+ "type": "string"
409
+ },
410
+ "metric": {
411
+ "examples": [
412
+ "cpu%",
413
+ "custom.linux.users.users"
414
+ ],
415
+ "title": "メトリック名(ホスト・サービス)",
416
+ "type": "string"
417
+ },
418
+ "missingDurationCritical": {
419
+ "examples": [
420
+ 60
421
+ ],
422
+ "title": "途切れ監視Critical条件(サービス)",
423
+ "type": "integer"
424
+ },
425
+ "missingDurationWarning": {
426
+ "examples": [
427
+ 60
428
+ ],
429
+ "title": "途切れ監視Warning条件(サービス)",
430
+ "type": "integer"
431
+ },
432
+ "name": {
433
+ "examples": [
434
+ "MY_MONITOR"
435
+ ],
436
+ "title": "監視ルール名",
437
+ "type": "string"
438
+ },
439
+ "notificationInterval": {
440
+ "examples": [
441
+ 60
442
+ ],
443
+ "title": "通知の再送間隔",
444
+ "type": "integer"
445
+ },
446
+ "operator": {
447
+ "enum": [
448
+ ">",
449
+ "<"
450
+ ],
451
+ "title": "演算子(ホスト・サービス・式)",
452
+ "type": "string"
453
+ },
454
+ "requestBody": {
455
+ "examples": [
456
+ "{\"message\": \"Example\"}"
457
+ ],
458
+ "title": "リクエストメッセージボディ(外形監視)",
459
+ "type": "string"
460
+ },
461
+ "responseTimeCritical": {
462
+ "examples": [
463
+ 5000
464
+ ],
465
+ "title": "レスポンスタイム閾値Critical条件(外形監視)",
466
+ "type": "integer"
467
+ },
468
+ "responseTimeDuration": {
469
+ "examples": [
470
+ 3
471
+ ],
472
+ "title": "レスポンスタイム平均値監視数(外形監視)",
473
+ "type": "integer"
474
+ },
475
+ "responseTimeWarning": {
476
+ "examples": [
477
+ 1000
478
+ ],
479
+ "title": "レスポンスタイム閾値Warning条件(外形監視)",
480
+ "type": "integer"
481
+ },
482
+ "scopes": {
483
+ "default": [],
484
+ "examples": [
485
+ []
486
+ ],
487
+ "items": {
488
+ "examples": [
489
+ "MY_SERVICE",
490
+ "MY_SERVICE: MY_ROLE"
491
+ ],
492
+ "title": "絞り込み対象サービス",
493
+ "type": "string"
494
+ },
495
+ "title": "絞り込み条件(ホスト)",
496
+ "type": "array"
497
+ },
498
+ "service": {
499
+ "examples": [
500
+ "MY_SERVICE"
501
+ ],
502
+ "title": "対象サービス名(サービス)、サービスメトリック書き出しサービス名(外形監視)",
503
+ "type": "string"
504
+ },
505
+ "skipCertificateVerification": {
506
+ "default": false,
507
+ "examples": [
508
+ false
509
+ ],
510
+ "title": "証明書の確認を行わない(外形監視)",
511
+ "type": "boolean"
512
+ },
513
+ "type": {
514
+ "default": "",
515
+ "enum": [
516
+ "host",
517
+ "external",
518
+ "expression",
519
+ "anomalyDetection",
520
+ "service",
521
+ "connectivity"
522
+ ],
523
+ "title": "監視ルールの対象形式",
524
+ "type": "string"
525
+ },
526
+ "url": {
527
+ "examples": [
528
+ "https://example.jp"
529
+ ],
530
+ "format": "uri",
531
+ "title": "監視対象URL(外形監視)",
532
+ "type": "string"
533
+ },
534
+ "warning": {
535
+ "examples": [
536
+ 10
537
+ ],
538
+ "title": "Warning条件閾値(ホスト・サービス・式)",
539
+ "type": "integer"
540
+ },
541
+ "warningSensitivity": {
542
+ "enum": [
543
+ "sensitive",
544
+ "normal",
545
+ "insensitive"
546
+ ],
547
+ "title": "センシティビティWarning条件(異常検知)",
548
+ "type": "string"
549
+ }
550
+ },
551
+ "required": [
552
+ "isMute",
553
+ "type",
554
+ "notificationInterval",
555
+ "name",
556
+ "id"
557
+ ],
558
+ "title": "監視ルール",
559
+ "type": "object"
560
+ },
561
+ "orgName": {
562
+ "examples": [
563
+ "MY_ORG"
564
+ ],
565
+ "title": "オーガニゼーション名",
566
+ "type": "string"
567
+ },
568
+ "user": {
569
+ "$ref": "#/definitions/user"
570
+ }
571
+ },
572
+ "required": [
573
+ "orgName",
574
+ "event",
575
+ "monitor",
576
+ "user"
577
+ ],
578
+ "title": "ルート",
579
+ "type": "object"
580
+ }