Correlation Detail

Trace: App change → jobs → lock execution → outcome.

correlation_id: 99a62747a7414f8f893ba09c3797ef41 fail debug_session_id: 03c99d8663284776ac96bb45d24383a2 window: 2026-02-02 09:21:10 .002026-02-02 11:21:51 .00

1 — What changed (AppAudit)

Time Entity Action Details
2026-02-02 09:21:10 .00 DoorGroupDoor #1 delete
Before/After + Copy
Before JSON
{
  "door_group_id": 1,
  "door_id": 2,
  "site_id": 1
}
After JSON
null

2 — What the system decided (Reconcile Jobs)

Time Job User Reason Status Attempts / Error Details
2026-02-02 09:21:10 .00 Job #12 13 door group changed done attempts: 6
age_seconds: 446642
Raw + Copy
Job JSON
{
  "attempt_count": 6,
  "correlation_id": "99a62747a7414f8f893ba09c3797ef41",
  "created_at": "2026-02-02T15:21:10Z",
  "debug_session_id": "03c99d8663284776ac96bb45d24383a2",
  "derived": {
    "age_seconds": 446641.553504,
    "is_stuck_running": false
  },
  "job_type": "reconcile_user",
  "last_error": null,
  "next_run_at": null,
  "reason": "door group changed",
  "reconcile_job_id": 12,
  "status": "done",
  "updated_at": "2026-02-02T17:21:51Z",
  "user_id": 13
}

3 — What was sent to locks (Provider → Lock)

ACCESS_BROKER

ACCESS_BROKER:unknown
1 fail
2026-02-02 09:21:10 .00 · RECONCILE_ENQUEUED · ok
2026-02-02 10:45:28 .00 · DEBUG_JOB_RESET · ok
2026-02-02 10:51:49 .00 · RECONCILE_JOB_START · ok
2026-02-02 10:51:50 .00 · RECONCILE_JOB_FAILED · fail reconcile_failed
Raw logs JSON
[
  {
    "action": "RECONCILE_ENQUEUED",
    "correlation_id": "99a62747a7414f8f893ba09c3797ef41",
    "created_at": "2026-02-02T15:21:10Z",
    "debug_session_id": "03c99d8663284776ac96bb45d24383a2",
    "door_id": null,
    "door_name": null,
    "error_message": null,
    "external_id": null,
    "id": 632,
    "lock_key": "ACCESS_BROKER:unknown",
    "ok": true,
    "provider_type": "ACCESS_BROKER",
    "reconcile_job_id": null,
    "request_json": {
      "deduped": false,
      "reason": "door group changed",
      "source": "door-group route",
      "user_id": 13
    },
    "response_json": {
      "job_id": 12
    }
  },
  {
    "action": "DEBUG_JOB_RESET",
    "correlation_id": "cf8eb6f427224090bb1731f9e54d42d6",
    "created_at": "2026-02-02T16:45:28Z",
    "debug_session_id": "03c99d8663284776ac96bb45d24383a2",
    "door_id": null,
    "door_name": null,
    "error_message": null,
    "external_id": null,
    "id": 636,
    "lock_key": "ACCESS_BROKER:unknown",
    "ok": true,
    "provider_type": "ACCESS_BROKER",
    "reconcile_job_id": 12,
    "request_json": {
      "computed": {
        "age_seconds": 5057.543072,
        "now_utc": "2026-02-02T16:45:28Z",
        "updated_at_utc": "2026-02-02T15:21:10Z"
      },
      "previous": {
        "status": "running",
        "updated_at": "2026-02-02T15:21:10Z"
      }
    },
    "response_json": null
  },
  {
    "action": "RECONCILE_JOB_START",
    "correlation_id": "99a62747a7414f8f893ba09c3797ef41",
    "created_at": "2026-02-02T16:51:49Z",
    "debug_session_id": null,
    "door_id": null,
    "door_name": null,
    "error_message": null,
    "external_id": null,
    "id": 649,
    "lock_key": "ACCESS_BROKER:unknown",
    "ok": true,
    "provider_type": "ACCESS_BROKER",
    "reconcile_job_id": 12,
    "request_json": {
      "attempt_count": 5,
      "job_id": 12,
      "job_type": "reconcile_user",
      "reason": "door group changed",
      "user_id": 13
    },
    "response_json": null
  },
  {
    "action": "RECONCILE_JOB_FAILED",
    "correlation_id": "99a62747a7414f8f893ba09c3797ef41",
    "created_at": "2026-02-02T16:51:50Z",
    "debug_session_id": null,
    "door_id": null,
    "door_name": null,
    "error_message": "reconcile_failed",
    "external_id": null,
    "id": 654,
    "lock_key": "ACCESS_BROKER:unknown",
    "ok": false,
    "provider_type": "ACCESS_BROKER",
    "reconcile_job_id": 12,
    "request_json": {
      "attempt_count": 5,
      "job_id": 12,
      "user_id": 13
    },
    "response_json": {
      "next_run_at": "2026-02-02T17:21:50.960610+00:00"
    }
  }
]

TTLOCK

TTLOCK:28991110
door: ttlock
2 fail Dump
2026-02-02 10:51:50 .00 · PASSCODE_LIST · fail
2026-02-02 10:51:50 .00 · PASSCODE_LIST · fail TTLock request failed (404)
Raw logs JSON
[
  {
    "action": "PASSCODE_LIST",
    "correlation_id": "99a62747a7414f8f893ba09c3797ef41",
    "created_at": "2026-02-02T16:51:50Z",
    "debug_session_id": null,
    "door_id": 2,
    "door_name": "ttlock",
    "error_message": null,
    "external_id": "28991110",
    "id": 650,
    "lock_key": "TTLOCK:28991110",
    "ok": false,
    "provider_type": "TTLOCK",
    "reconcile_job_id": 12,
    "request_json": {
      "accessToken": "***",
      "clientId": "6636adfbf3f9483d946082b74f20797c",
      "date": 1770051109325,
      "lockId": 28991110,
      "pageNo": 1,
      "pageSize": 200
    },
    "response_json": "\u003c!doctype html\u003e\u003chtml lang=\"en\"\u003e\u003chead\u003e\u003ctitle\u003eHTTP Status 404 \u2013 Not Found\u003c/title\u003e\u003cstyle type=\"text/css\"\u003ebody {font-family:Tahoma,Arial,sans-serif;} h1, h2, h3, b {color:white;background-color:#525D76;} h1 {font-size:22px;} h2 {font-size:16px;} h3 {font-size:14px;} p {font-size:12px;} a {color:black;} .line {height:1px;background-color:#525D76;border:none;}\u003c/style\u003e\u003c/head\u003e\u003cbody\u003e\u003ch1\u003eHTTP Status 404 \u2013 Not Found\u003c/h1\u003e\u003c/body\u003e\u003c/html\u003e"
  },
  {
    "action": "PASSCODE_LIST",
    "correlation_id": "99a62747a7414f8f893ba09c3797ef41",
    "created_at": "2026-02-02T16:51:50Z",
    "debug_session_id": null,
    "door_id": 2,
    "door_name": "ttlock",
    "error_message": "TTLock request failed (404)",
    "external_id": "28991110",
    "id": 651,
    "lock_key": "TTLOCK:28991110",
    "ok": false,
    "provider_type": "TTLOCK",
    "reconcile_job_id": 12,
    "request_json": {
      "accessToken": "***",
      "clientId": "6636adfbf3f9483d946082b74f20797c",
      "date": 1770051109325,
      "lockId": 28991110,
      "pageNo": 1,
      "pageSize": 200
    },
    "response_json": null
  }
]

4 — Timeline (All Integration Logs)

2026-02-02 09:21:10 .00 ok ACCESS_BROKER RECONCILE_ENQUEUED
Raw + Copy
Request JSON
{
  "deduped": false,
  "reason": "door group changed",
  "source": "door-group route",
  "user_id": 13
}
Response JSON
{
  "job_id": 12
}
2026-02-02 10:45:28 .00 ok ACCESS_BROKER DEBUG_JOB_RESET Job #12
Raw + Copy
Request JSON
{
  "computed": {
    "age_seconds": 5057.543072,
    "now_utc": "2026-02-02T16:45:28Z",
    "updated_at_utc": "2026-02-02T15:21:10Z"
  },
  "previous": {
    "status": "running",
    "updated_at": "2026-02-02T15:21:10Z"
  }
}
Response JSON
null
2026-02-02 10:51:49 .00 ok ACCESS_BROKER RECONCILE_JOB_START Job #12
Raw + Copy
Request JSON
{
  "attempt_count": 5,
  "job_id": 12,
  "job_type": "reconcile_user",
  "reason": "door group changed",
  "user_id": 13
}
Response JSON
null
2026-02-02 10:51:50 .00 fail TTLOCK PASSCODE_LIST Job #12
Raw + Copy
Request JSON
{
  "accessToken": "***",
  "clientId": "6636adfbf3f9483d946082b74f20797c",
  "date": 1770051109325,
  "lockId": 28991110,
  "pageNo": 1,
  "pageSize": 200
}
Response JSON
"\u003c!doctype html\u003e\u003chtml lang=\"en\"\u003e\u003chead\u003e\u003ctitle\u003eHTTP Status 404 \u2013 Not Found\u003c/title\u003e\u003cstyle type=\"text/css\"\u003ebody {font-family:Tahoma,Arial,sans-serif;} h1, h2, h3, b {color:white;background-color:#525D76;} h1 {font-size:22px;} h2 {font-size:16px;} h3 {font-size:14px;} p {font-size:12px;} a {color:black;} .line {height:1px;background-color:#525D76;border:none;}\u003c/style\u003e\u003c/head\u003e\u003cbody\u003e\u003ch1\u003eHTTP Status 404 \u2013 Not Found\u003c/h1\u003e\u003c/body\u003e\u003c/html\u003e"
2026-02-02 10:51:50 .00 fail TTLOCK PASSCODE_LIST Job #12
TTLock request failed (404)
Raw + Copy
Request JSON
{
  "accessToken": "***",
  "clientId": "6636adfbf3f9483d946082b74f20797c",
  "date": 1770051109325,
  "lockId": 28991110,
  "pageNo": 1,
  "pageSize": 200
}
Response JSON
null
2026-02-02 10:51:50 .00 fail ACCESS_BROKER RECONCILE_JOB_FAILED Job #12
reconcile_failed
Raw + Copy
Request JSON
{
  "attempt_count": 5,
  "job_id": 12,
  "user_id": 13
}
Response JSON
{
  "next_run_at": "2026-02-02T17:21:50.960610+00:00"
}