Files

192 lines
4.6 KiB
JSON
Raw Permalink Normal View History

{
"cases": "lab03-challenge.json",
"webhook": "my-intake",
"passed": 3,
"total": 7,
"results": [
{
"case": "API가 오래 멈춤 · 처음 실패",
"webhook": "my-intake",
"run": 1,
"passed": true,
"problems": [],
"seconds": 3.4,
"status": 200,
"request": {
"requests": [
{
"id": "R-301",
"user": "정우성",
"text": "사내 위키 로그인이 안 돼요"
},
{
"id": "R-302",
"user": "이준호",
"text": "노트북 배터리가 금방 닳아요"
}
]
},
"response": {
"total": 2,
"created": 0,
"failed": 2,
"rejected": 0,
"duplicates": 0,
"unclassified": 0,
"results": [
{
"id": "R-301",
"status": "failed",
"reason": "500 - \"{\\\"error\\\": \\\"tickets service is failing (fault switch)\\\"}\""
},
{
"id": "R-302",
"status": "failed",
"reason": "500 - \"{\\\"error\\\": \\\"tickets service is failing (fault switch)\\\"}\""
}
],
"dlq_saved": true,
"alert": "sent"
}
},
{
"case": "재처리 1 · 또 실패",
"webhook": "my-replay",
"run": 1,
"passed": true,
"problems": [],
"seconds": 2.2,
"status": 200,
"request": {},
"response": {
"replayed": 2,
"ok": 0,
"still_failed": 2,
"parked": 0,
"duplicates": 0
}
},
{
"case": "재처리 2 · 또 실패",
"webhook": "my-replay",
"run": 1,
"passed": true,
"problems": [],
"seconds": 2.4,
"status": 200,
"request": {},
"response": {
"replayed": 2,
"ok": 0,
"still_failed": 2,
"parked": 0,
"duplicates": 0
}
},
{
"case": "재처리 3 · 세 번 실패한 것은 멈춤 (parked)",
"webhook": "my-replay",
"run": 1,
"passed": false,
"problems": [
"replayed = 2 (expected 0)",
"parked = 0 (expected 2)"
],
"seconds": 2.0,
"status": 200,
"request": {},
"response": {
"replayed": 2,
"ok": 0,
"still_failed": 2,
"parked": 0,
"duplicates": 0
}
},
{
"case": "parked로 남음",
"webhook": "http://localhost:8800/dlq/list",
"run": 1,
"passed": false,
"problems": [
"parked = 0 (expected 2)"
],
"seconds": 0.0,
"status": 200,
"request": {},
"response": {
"size": 2,
"parked": 0,
"items": [
{
"dlq_id": "D-1",
"attempts": 4,
"parked": false,
"item": {
"id": "R-301",
"user": "정우성",
"text": "사내 위키 로그인이 안 돼요"
},
"reason": "500 - \"{\\\"error\\\": \\\"tickets service is failing (fault switch)\\\"}\"",
"workflow": "intake",
"at": 1793251105.2922482
},
{
"dlq_id": "D-2",
"attempts": 4,
"parked": false,
"item": {
"id": "R-302",
"user": "이준호",
"text": "노트북 배터리가 금방 닳아요"
},
"reason": "500 - \"{\\\"error\\\": \\\"tickets service is failing (fault switch)\\\"}\"",
"workflow": "intake",
"at": 1793251105.5231082
}
]
}
},
{
"case": "멈춘 것은 알림",
"webhook": "http://localhost:8800/alerts/latest",
"run": 1,
"passed": false,
"problems": [
"reason = dlq (expected parked)"
],
"seconds": 0.0,
"status": 200,
"request": {},
"response": {
"workflow": "intake",
"node": "Send to DLQ",
"severity": "high",
"reason": "dlq",
"count": 2,
"message": "2 request(s) could not be created and wait in the DLQ",
"execution_id": "10168",
"at": 1793251099.0033967
}
},
{
"case": "고친 뒤에도 parked는 자동으로 돌리지 않음",
"webhook": "my-replay",
"run": 1,
"passed": false,
"problems": [
"replayed = 2 (expected 0)"
],
"seconds": 1.6,
"status": 200,
"request": {},
"response": {
"replayed": 2,
"ok": 2,
"still_failed": 0,
"parked": 0,
"duplicates": 0
}
}
]
}