Open5

ElysiaJSのloggerを比べてみよう

ピン留めされたアイテム
巳波みなと巳波みなと
  • ElysiaJSの公式ドキュメントにあるCommunity Pluginsから抜粋
  • 公式ではLoggerは公開されてないっぽい
  • star / latestUpdateは2024/12/17現在のもの
巳波みなと巳波みなと

logysia

https://github.com/tristanisham/logysia

star: 42
latestUpdate: last month

sample

import { Elysia } from "elysia";
import { logger } from "@grotto/logysia";

const app = new Elysia()
    .use(
        logger({
            logIP: true,
        })
    )
    .get("/", () => "Hello Elysia")
    .listen(3000);

console.log(
    `🦊 Elysia is running at ${app.server?.hostname}:${app.server?.port}`
);

出力例

所感

  • シンプル
  • logIPは取れなかった。ヘッダーが適切に構成されている必要がありそう?
    • localhostなのも原因かもしれない
  • ログの出力先とIPを取るかどうかしか設定できないので、ちょっと機能が足りないかも
巳波みなと巳波みなと

logixlysia(←読むのムズそう)

https://github.com/PunGrumpy/logixlysia

star: 67
latestUpdate: 2 month ago

sample

import { Elysia } from "elysia";
import logixlysia from "logixlysia";

const app = new Elysia()
    .use(
        logixlysia({
            config: {
                showStartupMessage: true,
                startupMessageFormat: "simple",
                timestamp: {
                    translateTime: "yyyy-mm-dd HH:MM:ss",
                },
                ip: true,
            },
        })
    )
    .get("/", () => "Hello Elysia")
    .get("/hello", () => "test")
    .listen(3000);

出力例

所感

  • どこでserveされてるかどうかを出せるのが良い
  • リッチな感じで良い
  • そこそこカスタマイズ性がある

403で返してるのに200で返したことになってる