mirror of
https://github.com/ReCloudStudio/WebHooker.git
synced 2026-09-22 16:11:29 +00:00
- add feishu_links D1 table and link store helpers - implement X-Lark-Signature verification, url_verification, /gh login|logout|comment|merge|close and card.action.trigger Merge/Close - render interactive cards with clickable title link, inline links and callback buttons (no whole-card card_link) - bind Feishu account in OAuth callback - document event subscription and required scopes
37 lines
2.6 KiB
Markdown
37 lines
2.6 KiB
Markdown
# Logs
|
|
|
|
## Send Logs (`send_logs`)
|
|
|
|
Every dispatch attempt is recorded in the D1 `send_logs` table and browsable in the console (**Logs** tab). Fields:
|
|
|
|
| Field | Meaning |
|
|
| ------------ | ---------------------------------------------------------------- |
|
|
| `routeId` | Route that matched |
|
|
| `groupId` | Route's group |
|
|
| `event` | Event type (e.g. `push`, `pull_request`, `custom`) |
|
|
| `repo` | Repository full name (when present) |
|
|
| `target` | Target id the message was sent to |
|
|
| `platform` | `discord`, `telegram` or `feishu` |
|
|
| `ok` | Whether the send succeeded |
|
|
| `status` | HTTP status from the platform API (when applicable) |
|
|
| `error` | Error message (when failed) |
|
|
| `errorCode` | Stable error code (e.g. `NO_TARGET`, `NO_TOKEN`, `RATE_LIMITED`) |
|
|
| `attempts` | Send attempts including retries |
|
|
| `durationMs` | Time spent sending |
|
|
| `deliveryId` | Webhook delivery id (when provided) |
|
|
| `messageId` | Platform message id (used for in-place edits) |
|
|
| `actor` | Sender login |
|
|
| `action` | Event action (when present) |
|
|
| `detail` | Extra JSON details (when present) |
|
|
|
|
The console's **Logs** tab lists recent entries (filterable by group) and shows full details for a single entry. Entries are written best-effort — a failed insert never breaks dispatch.
|
|
|
|
## Audit Log (`audit_logs`)
|
|
|
|
Every admin operation is recorded in D1 `audit_logs` and browsable in the console (**Audit** tab): logins/logouts, group/route/member/invite changes, token revocations, installation bindings. Fields: timestamp, actor (GitHub id + login), action, target type/id, group id, ip, and detail JSON.
|
|
|
|
Entries are pruned automatically by the scheduled trigger after `AUDIT_RETENTION_DAYS` (default 90). Like send logs, writes are best-effort.
|
|
|
|
## Webhook Log Channel
|
|
|
|
Groups can additionally receive a per-webhook summary message in a Discord channel/thread or Telegram chat/topic — see [Groups → Webhook Log Channel](./groups#webhook-log-channel). These summaries are best-effort and are **not** recorded in `send_logs`.
|