0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

[OSS] VersaLogを作った話 -シンプルで拡張性のあるロギングライブラリ

Last updated at Posted at 2025-10-27

🧍‍♂️ 自己紹介

個人でOSS開発をしている者です。
今回は「VersaLog」というロギングライブラリについて紹介します。

💡 VersaLogを作ったきっかけ

既存のLoggerライブラリは、高機能ではあるものの

  • 設定が複雑
  • コードが冗長
  • 初学者にはとっつきにくい

といった課題を感じていました。

「もっとシンプルにログを書けて、必要なときだけ柔軟に拡張できるものが欲しい」
そんな思いから VersaLog の開発を始めました。

🌍 OSSとして公開した理由

同じように「ログ出力をもう少しシンプルにしたい」と感じている人は多いと思い、
自分だけで使うのではなく、誰でも使える形にして公開することにしました。

実際に使ってもらいながら、改善点や新しいアイデアを一緒に育てていければと思っています。
今後もアップデートや改善を続けていく予定なので、ぜひフィードバックやアイデアをいただけると嬉しいです!

🧩 VersaLogとは?

VersaLog は、「シンプルで拡張性のあるロギング」を目指して開発した
軽量・拡張可能なロギングライブラリです。

標準の logging モジュールをベースにしつつ、
より直感的なAPIと柔軟な拡張性を備えています

💡 本記事では、Python実装版の VersaLog を例に紹介しています。

✨ 主な特徴

  • 設定ファイルなしで簡単に使えるシンプルな設計
  • フォーマッタやハンドラを自由に拡張可能
  • カラー出力など多彩な出力形式に対応
  • ロガーの構成がわかりやすく、初心者にも扱いやすい
  • 依存ライブラリ最小構成で、軽量かつ高速

💡 現在の対応環境

  • Python 実装版
  • Ruby 実装版
  • JavaScript 実装版
  • Go(Golang) 実装版
  • Rust 実装版
  • 今後、他言語向けにも展開予定

🧭 設計思想

VersaLogは単なるログライブラリではなく、
「どの言語でも似た使い方で扱える統一ログ基盤」を目指しています。

そのため、Python版でもGo版でも、同じような思想とAPI設計を採用しています。

💻 実際の使い方(Python版)

from VersaLog import *

logger = VersaLog(enum="detailed")
logger.info("ok")
logger.error("err")
logger.warning("war")
logger.debug("deb")
logger.critical("cri")

🔗 リンクまとめ

🚀 おわりに

VersaLogはまだ発展途上のプロジェクトですが、
「シンプルだけど拡張できる」ロギングの形を追求していきます。

もし気に入ってもらえたら、
ぜひ GitHubのスターやフィードバック をお願いします

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?