event-log
JSONL event stream for external integrations and hooks
安装与使用
请根据来源仓库和你的 AI 工具说明安装此技能。先阅读技能文件和依赖要求,再添加到工作流。
查看来源 ↗使用指南技能说明
Event Log
JSONL-based event logging for external program integration. Events mirror database event creation and enable hooks similar to Claude Code's event system.
Purpose
- Emit structured events for external consumers
- Enable hook-based integrations
- Mirror the database event stream
Log Location
- Default:
.ikigai/logs/current.log - Override:
$IKIGAI_LOG_DIR/current.log
APIs
DI-Based (Preferred)
#include "logger.h"
// Create logger with explicit context
ik_logger_t *logger = ik_logger_create(ctx, working_dir);
// Create and emit event
yyjson_mut_doc *doc = ik_log_create();
yyjson_mut_val *root = yyjson_mut_doc_get_root(doc);
yyjson_mut_obj_add_str(doc, root, "event", "chunk_received");
yyjson_mut_obj_add_int(doc, root, "bytes", len);
ik_logger_debug_json(logger, doc); // Takes ownership, frees doc
Legacy Global (Migration)
// Initialize once
ik_log_init(working_dir);
// Emit events
yyjson_mut_doc *doc = ik_log_create();
// ... populate doc ...
ik_log_debug_json(doc); // Takes ownership
// Shutdown
ik_log_shutdown();
Log Levels
| Level | Function | Purpose |
|---|---|---|
| debug | ik_logger_debug_json() |
Verbose event tracing |
| info | ik_logger_info_json() |
Normal operations |
| warn | ik_logger_warn_json() |
Recoverable issues |
| error | ik_logger_error_json() |
Failures |
| fatal | ik_logger_fatal_json() |
Calls exit(1) after logging |
Output Format
Each line is a JSON object:
{"level":"debug","timestamp":"2025-01-15T10:30:00.123-05:00","logline":{"event":"chunk_received","bytes":1024}}
Inspecting Events
tail -f .ikigai/logs/current.log
Source Files
-
src/logger.h- API declarations -
src/logger.c- Implementation
使用示例
查看来源仓库中的使用示例与配置说明。
查看来源 ↗来源历史
- 收录时间
- 2026-01-20
- 索引更新时间
- 2026-01-26
- Branch
- main
收录与同步日期属于本站记录。源码修改历史请查看来源仓库。
GitHub ↗chat Comments (0)
Sign in to join the discussion and leave a comment.
No comments yet. Be the first to share your thoughts!