# Elogs > The logger for Elysia.js — simple and easy to use, beautiful and powerful ## Api - [@eastgold15/elogs](https://elogs-elysia.vercel.app/api/README) ### Functions - [Function: createElogs()](https://elogs-elysia.vercel.app/api/functions/createElogs) - [Function: createWsHandlerWrapper()](https://elogs-elysia.vercel.app/api/functions/createWsHandlerWrapper) - [Function: errorMap()](https://elogs-elysia.vercel.app/api/functions/errorMap) - [Function: httpError()](https://elogs-elysia.vercel.app/api/functions/httpError) - [Function: initGlobalLogger()](https://elogs-elysia.vercel.app/api/functions/initGlobalLogger) - [Function: injectTraceContext()](https://elogs-elysia.vercel.app/api/functions/injectTraceContext) - [Function: isDrizzleError()](https://elogs-elysia.vercel.app/api/functions/isDrizzleError) - [Function: mergeAIMetrics()](https://elogs-elysia.vercel.app/api/functions/mergeAIMetrics) - [Function: registerPreset()](https://elogs-elysia.vercel.app/api/functions/registerPreset) - [Function: setGlobalLogger()](https://elogs-elysia.vercel.app/api/functions/setGlobalLogger) - [Function: translateDrizzleError()](https://elogs-elysia.vercel.app/api/functions/translateDrizzleError) - [Function: useLogger()](https://elogs-elysia.vercel.app/api/functions/useLogger) ### Interfaces - [Interface: AIMetrics](https://elogs-elysia.vercel.app/api/interfaces/AIMetrics) - [Interface: CreateElogsOptions](https://elogs-elysia.vercel.app/api/interfaces/CreateElogsOptions) - [Interface: DrizzleLikeError](https://elogs-elysia.vercel.app/api/interfaces/DrizzleLikeError) - [Interface: ElogsConfig](https://elogs-elysia.vercel.app/api/interfaces/ElogsConfig) - [Interface: GlobalLogger](https://elogs-elysia.vercel.app/api/interfaces/GlobalLogger) - [Interface: Logger](https://elogs-elysia.vercel.app/api/interfaces/Logger) - [Interface: RequestContextStore](https://elogs-elysia.vercel.app/api/interfaces/RequestContextStore) - [Interface: TraceContextFields](https://elogs-elysia.vercel.app/api/interfaces/TraceContextFields) - [Interface: WebSocketLike](https://elogs-elysia.vercel.app/api/interfaces/WebSocketLike) - [Interface: WsHandlerHooks\](https://elogs-elysia.vercel.app/api/interfaces/WsHandlerHooks) ### Type Aliases - [Type Alias: ContextKey](https://elogs-elysia.vercel.app/api/type-aliases/ContextKey) - [Type Alias: CreateElogs](https://elogs-elysia.vercel.app/api/type-aliases/CreateElogs) - [Type Alias: LogPreset](https://elogs-elysia.vercel.app/api/type-aliases/LogPreset) - [Type Alias: PresetConfig](https://elogs-elysia.vercel.app/api/type-aliases/PresetConfig) ### Variables - [Variable: globalLogger](https://elogs-elysia.vercel.app/api/variables/globalLogger) - [Variable: pino](https://elogs-elysia.vercel.app/api/variables/pino) - [Variable: requestStorage](https://elogs-elysia.vercel.app/api/variables/requestStorage) ## Changelog - [elogs: v2.0.0](https://elogs-elysia.vercel.app/changelog/elogs-v2-0-0) ## Documentation - [Introduction](https://elogs-elysia.vercel.app/docs/introduction): Elogs 入门 — Elysia.js 的高性能日志插件 - [Elysia 2 适配](https://elogs-elysia.vercel.app/docs/elysia-2): Elogs 在 Elysia 2 open beta 上的适配说明,以及升级时的所有破坏性变更 - [Comparison](https://elogs-elysia.vercel.app/docs/comparison): How Elogs compares to evlog and other Elysia loggers - [从 evlog 迁移](https://elogs-elysia.vercel.app/docs/migration-from-evlog): 把 evlog 的 wide event 风格映射到 Elogs 的请求 context 与 access log - [Examples](https://elogs-elysia.vercel.app/docs/examples): Real-world examples and use cases for Elogs - [FAQ](https://elogs-elysia.vercel.app/docs/faq): Frequently asked questions about Elogs - [Contributing](https://elogs-elysia.vercel.app/docs/contributing): Contribute to Elogs development - [开发流程](https://elogs-elysia.vercel.app/docs/development): Conventional Commits + release-please 自动化发版规范,提交即版本 - [Usage](https://elogs-elysia.vercel.app/docs/usage): 在 Elysia 应用中使用 Elogs - [Configuration](https://elogs-elysia.vercel.app/docs/configuration): Elogs 完整配置参考 - [Preview](https://elogs-elysia.vercel.app/docs/preview) ### Features - [Startup Banner](https://elogs-elysia.vercel.app/docs/features/startup): 启动横幅(service / port / format) - [Presets](https://elogs-elysia.vercel.app/docs/features/presets): 现成的 dev、prod、json 日志默认值 - [Request Context](https://elogs-elysia.vercel.app/docs/features/request-context): 把请求作用域的字段累积到一条 access log - [Request ID](https://elogs-elysia.vercel.app/docs/features/request-id): 在请求和响应之间生成或透传唯一标识 - [WebSocket Logging](https://elogs-elysia.vercel.app/docs/features/websocket): Log WebSocket open、message、close 事件 - [Custom Formatting](https://elogs-elysia.vercel.app/docs/features/formatting): 自定义日志消息格式、token 集合、颜色和时间戳 - [Log Filtering](https://elogs-elysia.vercel.app/docs/features/filtering): Filter logs based on level, output sink, and transport predicates - [Log Levels](https://elogs-elysia.vercel.app/docs/features/log-levels): 控制日志详细程度 - [File Logging](https://elogs-elysia.vercel.app/docs/features/file-logging): 把日志写入文件以便持久化 - [Custom Transports](https://elogs-elysia.vercel.app/docs/features/transports): 把日志发到外部服务(Elasticsearch / Slack / OpenTelemetry ...) - [Log Rotation](https://elogs-elysia.vercel.app/docs/features/log-rotation): 管理日志文件大小、轮转间隔、压缩和保留策略 - [Database errors](https://elogs-elysia.vercel.app/docs/features/database-errors): 把 Drizzle ORM 的底层 driver 错误翻译成有意义的 HTTP 状态码 ### Integrations - [Pino](https://elogs-elysia.vercel.app/docs/integrations/pino): 用 Pino 做高性能结构化日志 - [OpenTelemetry](https://elogs-elysia.vercel.app/docs/integrations/otel): 把日志跟活动 trace 和 span 关联起来 - [AI SDK metrics](https://elogs-elysia.vercel.app/docs/integrations/ai): 把 LLM 用量指标挂到请求日志 ## RSS Feeds - [Elogs — Changelog](https://elogs-elysia.vercel.app/changelog/rss.xml)