
洪 民憙 (Hong Minhee)
@hongminhee@hollo.social
The next release of #LogTape will include adapters for popular logging libraries Pino and winston.
@hongminhee@hollo.social
The next release of #LogTape will include adapters for popular logging libraries Pino and winston.
@hongminhee@hollo.social
The next release of #LogTape will include adapters for popular logging libraries Pino and winston.
@hongminhee@hollo.social
The next release of #LogTape will include adapters for popular logging libraries Pino and winston.
@hongminhee@hollo.social
The next release of #LogTape will include adapters for popular logging libraries Pino and winston.
@hongminhee@hollo.social
I implemented data redaction for #LogTape today. The feature will be available through a dedicated package called @logtape/redaction (JSR & npm). It provides two complementary approaches to protect sensitive information in your logs:
Looking forward to releasing this with LogTape 0.10.0 soon!
@hongminhee@hollo.social
I implemented data redaction for #LogTape today. The feature will be available through a dedicated package called @logtape/redaction (JSR & npm). It provides two complementary approaches to protect sensitive information in your logs:
Looking forward to releasing this with LogTape 0.10.0 soon!
@hongminhee@hollo.social
Just released #LogTape 0.9.0! 🎉
This version brings two major improvements to our zero-dependency #logging library for #TypeScript:
New Synchronous Configuration API: You can now configure LogTape synchronously with configureSync()
, disposeSync()
, and resetSync()
. Perfect for simpler setups where you don't need async
operations!
Better Runtime Compatibility: We've moved all file-related components to a separate @logtape/file
package. This means the core package now works flawlessly across all JavaScript environments—browsers, edge functions, and various bundlers without any file system dependencies.
Plus, we've added level mapping options for console sinks, giving you more control over how your logs appear.
Check out the full release notes for migration details:
@hongminhee@hackers.pub
We're excited to announce the release of LogTape 0.9.0! This version brings important improvements to make LogTape more flexible across different JavaScript environments while simplifying configuration for common use cases.
Added synchronous versions of the configuration functions:
configureSync()
: Configure LogTape synchronouslydisposeSync()
: Dispose LogTape resources synchronouslyresetSync()
: Reset LogTape configuration synchronouslyThese functions offer a simpler API for scenarios where async operations aren't needed, allowing for more straightforward code without awaiting promises. Note that these functions cannot use sinks or filters that require asynchronous disposal (such as stream sinks), but they work perfectly for most common logging configurations.
import { configureSync, getConsoleSink } from "@logtape/logtape";
configureSync({
sinks: {
console: getConsoleSink(),
},
loggers: [
{
category: "my-app",
lowestLevel: "info",
sinks: ["console"],
},
],
});
ConsoleSinkOptions.levelMap
option for customizing how log levels are mapped to console methodsTo improve runtime compatibility, file-related sinks have been moved to the @logtape/file
package:
getFileSink()
function to @logtape/file
packageFileSinkOptions
interface to @logtape/file
packagegetRotatingFileSink()
function to @logtape/file
packageRotatingFileSinkOptions
interface to @logtape/file
packageThis architectural change ensures the core @logtape/logtape
package is fully compatible with all JavaScript runtimes, including browsers and edge functions, without introducing file system dependencies. You'll now enjoy better compatibility with bundlers like Webpack, Rollup, and Vite that previously had issues with the file system imports.
If you were using file sinks, update your imports:
// Before
import { getFileSink, getRotatingFileSink } from "@logtape/logtape";
// After
import { getFileSink, getRotatingFileSink } from "@logtape/file";
Don't forget to install the new package:
# For npm, pnpm, Yarn, Bun
npm add @logtape/file
# For Deno
deno add jsr:@logtape/file
This release represents our ongoing commitment to making LogTape the most flexible and developer-friendly logging solution for JavaScript and TypeScript applications. We're continuing to improve performance and extend compatibility across the JavaScript ecosystem.
Special thanks to Murph Murphy for their valuable contribution to this release.
As always, we welcome your feedback and contributions! Feel free to open issues or pull requests on our GitHub repository.
Happy logging!
@hongminhee@hollo.social · Reply to 洪 民憙 (Hong Minhee)'s post
#LogTape 0.9.0をリリースしました!🎉
今回のバージョンでは、TypeScript向けの依存関係ゼロのロギングライブラリに二つの大きな改善を加えました:
新しい同期設定API:configureSync()
、disposeSync()
、resetSync()
を使って同期的にLogTapeを設定できるようになりました。非同期操作が不要なシンプルな環境に最適です!
ランタイム互換性の向上:ファイル関連のコンポーネントをすべて別パッケージ@logtape/file
に移動しました。これにより、コアパッケージはファイルシステム依存なしで、ブラウザ、エッジ関数、各種バンドラーなど、あらゆるJavaScript環境でシームレスに動作します。
さらに、コンソールシンクにレベルマッピングオプションを追加し、ログの表示方法をより細かく制御できるようになりました。
移行の詳細については、リリースノートをご覧ください。
@hongminhee@hollo.social
Just released #LogTape 0.9.0! 🎉
This version brings two major improvements to our zero-dependency #logging library for #TypeScript:
New Synchronous Configuration API: You can now configure LogTape synchronously with configureSync()
, disposeSync()
, and resetSync()
. Perfect for simpler setups where you don't need async
operations!
Better Runtime Compatibility: We've moved all file-related components to a separate @logtape/file
package. This means the core package now works flawlessly across all JavaScript environments—browsers, edge functions, and various bundlers without any file system dependencies.
Plus, we've added level mapping options for console sinks, giving you more control over how your logs appear.
Check out the full release notes for migration details:
@hongminhee@hackers.pub
We're excited to announce the release of LogTape 0.9.0! This version brings important improvements to make LogTape more flexible across different JavaScript environments while simplifying configuration for common use cases.
Added synchronous versions of the configuration functions:
configureSync()
: Configure LogTape synchronouslydisposeSync()
: Dispose LogTape resources synchronouslyresetSync()
: Reset LogTape configuration synchronouslyThese functions offer a simpler API for scenarios where async operations aren't needed, allowing for more straightforward code without awaiting promises. Note that these functions cannot use sinks or filters that require asynchronous disposal (such as stream sinks), but they work perfectly for most common logging configurations.
import { configureSync, getConsoleSink } from "@logtape/logtape";
configureSync({
sinks: {
console: getConsoleSink(),
},
loggers: [
{
category: "my-app",
lowestLevel: "info",
sinks: ["console"],
},
],
});
ConsoleSinkOptions.levelMap
option for customizing how log levels are mapped to console methodsTo improve runtime compatibility, file-related sinks have been moved to the @logtape/file
package:
getFileSink()
function to @logtape/file
packageFileSinkOptions
interface to @logtape/file
packagegetRotatingFileSink()
function to @logtape/file
packageRotatingFileSinkOptions
interface to @logtape/file
packageThis architectural change ensures the core @logtape/logtape
package is fully compatible with all JavaScript runtimes, including browsers and edge functions, without introducing file system dependencies. You'll now enjoy better compatibility with bundlers like Webpack, Rollup, and Vite that previously had issues with the file system imports.
If you were using file sinks, update your imports:
// Before
import { getFileSink, getRotatingFileSink } from "@logtape/logtape";
// After
import { getFileSink, getRotatingFileSink } from "@logtape/file";
Don't forget to install the new package:
# For npm, pnpm, Yarn, Bun
npm add @logtape/file
# For Deno
deno add jsr:@logtape/file
This release represents our ongoing commitment to making LogTape the most flexible and developer-friendly logging solution for JavaScript and TypeScript applications. We're continuing to improve performance and extend compatibility across the JavaScript ecosystem.
Special thanks to Murph Murphy for their valuable contribution to this release.
As always, we welcome your feedback and contributions! Feel free to open issues or pull requests on our GitHub repository.
Happy logging!
@hongminhee@hollo.social
Just released #LogTape 0.9.0! 🎉
This version brings two major improvements to our zero-dependency #logging library for #TypeScript:
New Synchronous Configuration API: You can now configure LogTape synchronously with configureSync()
, disposeSync()
, and resetSync()
. Perfect for simpler setups where you don't need async
operations!
Better Runtime Compatibility: We've moved all file-related components to a separate @logtape/file
package. This means the core package now works flawlessly across all JavaScript environments—browsers, edge functions, and various bundlers without any file system dependencies.
Plus, we've added level mapping options for console sinks, giving you more control over how your logs appear.
Check out the full release notes for migration details:
@hongminhee@hackers.pub
We're excited to announce the release of LogTape 0.9.0! This version brings important improvements to make LogTape more flexible across different JavaScript environments while simplifying configuration for common use cases.
Added synchronous versions of the configuration functions:
configureSync()
: Configure LogTape synchronouslydisposeSync()
: Dispose LogTape resources synchronouslyresetSync()
: Reset LogTape configuration synchronouslyThese functions offer a simpler API for scenarios where async operations aren't needed, allowing for more straightforward code without awaiting promises. Note that these functions cannot use sinks or filters that require asynchronous disposal (such as stream sinks), but they work perfectly for most common logging configurations.
import { configureSync, getConsoleSink } from "@logtape/logtape";
configureSync({
sinks: {
console: getConsoleSink(),
},
loggers: [
{
category: "my-app",
lowestLevel: "info",
sinks: ["console"],
},
],
});
ConsoleSinkOptions.levelMap
option for customizing how log levels are mapped to console methodsTo improve runtime compatibility, file-related sinks have been moved to the @logtape/file
package:
getFileSink()
function to @logtape/file
packageFileSinkOptions
interface to @logtape/file
packagegetRotatingFileSink()
function to @logtape/file
packageRotatingFileSinkOptions
interface to @logtape/file
packageThis architectural change ensures the core @logtape/logtape
package is fully compatible with all JavaScript runtimes, including browsers and edge functions, without introducing file system dependencies. You'll now enjoy better compatibility with bundlers like Webpack, Rollup, and Vite that previously had issues with the file system imports.
If you were using file sinks, update your imports:
// Before
import { getFileSink, getRotatingFileSink } from "@logtape/logtape";
// After
import { getFileSink, getRotatingFileSink } from "@logtape/file";
Don't forget to install the new package:
# For npm, pnpm, Yarn, Bun
npm add @logtape/file
# For Deno
deno add jsr:@logtape/file
This release represents our ongoing commitment to making LogTape the most flexible and developer-friendly logging solution for JavaScript and TypeScript applications. We're continuing to improve performance and extend compatibility across the JavaScript ecosystem.
Special thanks to Murph Murphy for their valuable contribution to this release.
As always, we welcome your feedback and contributions! Feel free to open issues or pull requests on our GitHub repository.
Happy logging!
@hongminhee@hollo.social · Reply to 洪 民憙 (Hong Minhee)'s post
#LogTape 0.9.0をリリースしました!🎉
今回のバージョンでは、TypeScript向けの依存関係ゼロのロギングライブラリに二つの大きな改善を加えました:
新しい同期設定API:configureSync()
、disposeSync()
、resetSync()
を使って同期的にLogTapeを設定できるようになりました。非同期操作が不要なシンプルな環境に最適です!
ランタイム互換性の向上:ファイル関連のコンポーネントをすべて別パッケージ@logtape/file
に移動しました。これにより、コアパッケージはファイルシステム依存なしで、ブラウザ、エッジ関数、各種バンドラーなど、あらゆるJavaScript環境でシームレスに動作します。
さらに、コンソールシンクにレベルマッピングオプションを追加し、ログの表示方法をより細かく制御できるようになりました。
移行の詳細については、リリースノートをご覧ください。
@hongminhee@hollo.social
Just released #LogTape 0.9.0! 🎉
This version brings two major improvements to our zero-dependency #logging library for #TypeScript:
New Synchronous Configuration API: You can now configure LogTape synchronously with configureSync()
, disposeSync()
, and resetSync()
. Perfect for simpler setups where you don't need async
operations!
Better Runtime Compatibility: We've moved all file-related components to a separate @logtape/file
package. This means the core package now works flawlessly across all JavaScript environments—browsers, edge functions, and various bundlers without any file system dependencies.
Plus, we've added level mapping options for console sinks, giving you more control over how your logs appear.
Check out the full release notes for migration details:
@hongminhee@hackers.pub
We're excited to announce the release of LogTape 0.9.0! This version brings important improvements to make LogTape more flexible across different JavaScript environments while simplifying configuration for common use cases.
Added synchronous versions of the configuration functions:
configureSync()
: Configure LogTape synchronouslydisposeSync()
: Dispose LogTape resources synchronouslyresetSync()
: Reset LogTape configuration synchronouslyThese functions offer a simpler API for scenarios where async operations aren't needed, allowing for more straightforward code without awaiting promises. Note that these functions cannot use sinks or filters that require asynchronous disposal (such as stream sinks), but they work perfectly for most common logging configurations.
import { configureSync, getConsoleSink } from "@logtape/logtape";
configureSync({
sinks: {
console: getConsoleSink(),
},
loggers: [
{
category: "my-app",
lowestLevel: "info",
sinks: ["console"],
},
],
});
ConsoleSinkOptions.levelMap
option for customizing how log levels are mapped to console methodsTo improve runtime compatibility, file-related sinks have been moved to the @logtape/file
package:
getFileSink()
function to @logtape/file
packageFileSinkOptions
interface to @logtape/file
packagegetRotatingFileSink()
function to @logtape/file
packageRotatingFileSinkOptions
interface to @logtape/file
packageThis architectural change ensures the core @logtape/logtape
package is fully compatible with all JavaScript runtimes, including browsers and edge functions, without introducing file system dependencies. You'll now enjoy better compatibility with bundlers like Webpack, Rollup, and Vite that previously had issues with the file system imports.
If you were using file sinks, update your imports:
// Before
import { getFileSink, getRotatingFileSink } from "@logtape/logtape";
// After
import { getFileSink, getRotatingFileSink } from "@logtape/file";
Don't forget to install the new package:
# For npm, pnpm, Yarn, Bun
npm add @logtape/file
# For Deno
deno add jsr:@logtape/file
This release represents our ongoing commitment to making LogTape the most flexible and developer-friendly logging solution for JavaScript and TypeScript applications. We're continuing to improve performance and extend compatibility across the JavaScript ecosystem.
Special thanks to Murph Murphy for their valuable contribution to this release.
As always, we welcome your feedback and contributions! Feel free to open issues or pull requests on our GitHub repository.
Happy logging!
@hongminhee@hollo.social · Reply to 洪 民憙 (Hong Minhee)'s post
Just responded to some browser compatibility issues with #LogTape. Turns out bundling everything in one package creates headaches for Next.js and other browser environments.
For the next minor version, we're breaking things up:
@logtape/logtape
will be browser-friendly with zero compromises@logtape/file
will handle filesystem operationsThis should make LogTape work seamlessly across all environments while giving developers better control over what they include.
@hongminhee@hollo.social · Reply to 洪 民憙 (Hong Minhee)'s post
Just responded to some browser compatibility issues with #LogTape. Turns out bundling everything in one package creates headaches for Next.js and other browser environments.
For the next minor version, we're breaking things up:
@logtape/logtape
will be browser-friendly with zero compromises@logtape/file
will handle filesystem operationsThis should make LogTape work seamlessly across all environments while giving developers better control over what they include.
@hongminhee@hollo.social
I am to resolve the pending issues of #LogTape this evening.
@hongminhee@hollo.social
Haven't talked about LogTape in a while—it's a #logging library I made for #JavaScript and #TypeScript. You know how logging can be a pain point in JavaScript/TypeScript development? Well, I tried to address some common frustrations.
We've all been there with dependency hell, right? #LogTape has absolutely no external dependencies. Install it without worrying about bloating your node_modules.
You can organize your logs in a tree structure. Want to save only database-related logs to a file? Easy to do. Child categories can inherit settings from their parents too, which keeps things clean and manageable.
Writing a library and want to include logs without stepping on your users' toes? LogTape lets you add logging to your library while giving end users complete control over how those logs are handled.
Plain text logs not cutting it? LogTape supports structured logging. Makes log analysis way easier down the road.
Works smoothly in Node.js, Deno, Bun, browsers, and even edge functions. No special configuration needed.
Check out https://logtape.org/ if you're interested in learning more.
@hongminhee@hollo.social
Haven't talked about LogTape in a while—it's a #logging library I made for #JavaScript and #TypeScript. You know how logging can be a pain point in JavaScript/TypeScript development? Well, I tried to address some common frustrations.
We've all been there with dependency hell, right? #LogTape has absolutely no external dependencies. Install it without worrying about bloating your node_modules.
You can organize your logs in a tree structure. Want to save only database-related logs to a file? Easy to do. Child categories can inherit settings from their parents too, which keeps things clean and manageable.
Writing a library and want to include logs without stepping on your users' toes? LogTape lets you add logging to your library while giving end users complete control over how those logs are handled.
Plain text logs not cutting it? LogTape supports structured logging. Makes log analysis way easier down the road.
Works smoothly in Node.js, Deno, Bun, browsers, and even edge functions. No special configuration needed.
Check out https://logtape.org/ if you're interested in learning more.
@hongminhee@hollo.social
Haven't talked about LogTape in a while—it's a #logging library I made for #JavaScript and #TypeScript. You know how logging can be a pain point in JavaScript/TypeScript development? Well, I tried to address some common frustrations.
We've all been there with dependency hell, right? #LogTape has absolutely no external dependencies. Install it without worrying about bloating your node_modules.
You can organize your logs in a tree structure. Want to save only database-related logs to a file? Easy to do. Child categories can inherit settings from their parents too, which keeps things clean and manageable.
Writing a library and want to include logs without stepping on your users' toes? LogTape lets you add logging to your library while giving end users complete control over how those logs are handled.
Plain text logs not cutting it? LogTape supports structured logging. Makes log analysis way easier down the road.
Works smoothly in Node.js, Deno, Bun, browsers, and even edge functions. No special configuration needed.
Check out https://logtape.org/ if you're interested in learning more.
@hongminhee@hollo.social · Reply to 洪 民憙 (Hong Minhee)'s post
@hongminhee@hollo.social
Haven't talked about LogTape in a while—it's a #logging library I made for #JavaScript and #TypeScript. You know how logging can be a pain point in JavaScript/TypeScript development? Well, I tried to address some common frustrations.
We've all been there with dependency hell, right? #LogTape has absolutely no external dependencies. Install it without worrying about bloating your node_modules.
You can organize your logs in a tree structure. Want to save only database-related logs to a file? Easy to do. Child categories can inherit settings from their parents too, which keeps things clean and manageable.
Writing a library and want to include logs without stepping on your users' toes? LogTape lets you add logging to your library while giving end users complete control over how those logs are handled.
Plain text logs not cutting it? LogTape supports structured logging. Makes log analysis way easier down the road.
Works smoothly in Node.js, Deno, Bun, browsers, and even edge functions. No special configuration needed.
Check out https://logtape.org/ if you're interested in learning more.
@hongminhee@hollo.social
Haven't talked about LogTape in a while—it's a #logging library I made for #JavaScript and #TypeScript. You know how logging can be a pain point in JavaScript/TypeScript development? Well, I tried to address some common frustrations.
We've all been there with dependency hell, right? #LogTape has absolutely no external dependencies. Install it without worrying about bloating your node_modules.
You can organize your logs in a tree structure. Want to save only database-related logs to a file? Easy to do. Child categories can inherit settings from their parents too, which keeps things clean and manageable.
Writing a library and want to include logs without stepping on your users' toes? LogTape lets you add logging to your library while giving end users complete control over how those logs are handled.
Plain text logs not cutting it? LogTape supports structured logging. Makes log analysis way easier down the road.
Works smoothly in Node.js, Deno, Bun, browsers, and even edge functions. No special configuration needed.
Check out https://logtape.org/ if you're interested in learning more.
@hongminhee@fosstodon.org
Just released @logtape/sentry, a #LogTape sink for @getsentry! Now you can easily send your logs to #Sentry.
@anno189@hollo.1dian.site
#logtape #hollo #package Simple logging library with zero dependencies for Deno, Node.js, Bun, browsers, and edge functions https://logtape.org/
@hongminhee@fosstodon.org
Star History of #Fedify, #Hollo, and #LogTape:
https://star-history.com/#dahlia/fedify&dahlia/logtape&dahlia/hollo&Date
@hongminhee@fosstodon.org · Reply to 洪 民憙 (Hong Minhee)'s post
#LogTape 0.7.0をリリースしました!
新機能の暗黙的コンテキストにより、リクエストID、ユーザーIDなどの文脈情報を、手動で渡すことなくログに自動的に含められるようになりました。
詳しくは記事をご覧ください:
@hongminhee@fosstodon.org
Just released #LogTape 0.7.0 with implicit contexts! Now you can automatically include request IDs, user IDs, and more in your logs without passing context manually. Read more about this powerful feature:
https://dev.to/hongminhee/introducing-implicit-contexts-in-logtape-070-57fi
@hongminhee@fosstodon.org
#LogTape v0.6.0, a zero-dependency structured logging library for #JavaScript & #TypeScript, has been released. The main changes include:
• Loggers now can override sinks of their ascendants.
• Placeholders in message templates now forgive leading and trailing spaces.
• Added LogRecord.rawMessage property.
• Built-in text formatters now can be customized.
Available now from JSR and npm:
• JSR: https://jsr.io/@logtape/logtape@0.6.0
• npm: https://www.npmjs.com/package/@logtape/logtape/v/0.6.0
@hongminhee@fosstodon.org
Starting with the next version of #LogTape, the built-in text formatters will be highly customizable.
https://unstable.logtape.org/manual/formatters#configuring-text-formatters
@hongminhee@fosstodon.org
Refactoring #LogTape's built-in text formatters… It will provide options for more flexible configuration.
@hongminhee@fosstodon.org
Oh, the #LogTape's GitHub repository has reached 400 stars!
@hongminhee@fosstodon.org
Version 0.5.0 of #LogTape, the zero-dependency #logging library for #Deno, #Node.js, #Bun, edge functions, and browsers, has been released! The main additions include:
• Contexts
• ANSI color formatter
• Comprehensive docs
• A few API conveniences
LogTape v0.5.0 is available from JSR and npm:
• JSR: https://jsr.io/@logtape/logtape@0.5.0
• npm: https://www.npmjs.com/package/@logtape/logtape/v/0.5.0
In addition, a new website with documentation has been launched, so please check it out!
@hongminhee@fosstodon.org · Reply to 洪 民憙 (Hong Minhee)'s post
#LogTape got its website now!
@hongminhee@fosstodon.org
Working on the #LogTape website… #VitePress saves me again.
@hongminhee@fosstodon.org · Reply to 洪 民憙 (Hong Minhee)'s post
Okay, all done. You can now use #LogTape to send logs directly to the #OpenTelemetry collector!
@hongminhee@fosstodon.org
I'm implementing an #OpenTelemetry sink for #LogTape, but it's more complicated than I thought and has a lot of package dependencies… 🤔
@hongminhee@fosstodon.org
QiitaにLogTapeの紹介文を日本語で書いて載せました。翻訳機とAIを多用したため、不自然な日本語があるかもしれませんが、不適切な表現を見つけたらぜひご指摘ください!
@hongminhee@fosstodon.org
Wow, a lot of people starred the #LogTape repo overnight! It's now over 200 stars, thank you.
@hongminhee@fosstodon.org
In the next version of #LogTape, a zero-dependency #logging library for #JavaScript & #TypeScript, contexts will be introduced that allow the same set of properties to be shared across multiple log messages. Thanks to @okikio for collaborating on the design! This feature is available for preview in 0.5.0-dev.60+f819929c.
• JSR: https://jsr.io/@logtape/logtape@0.5.0-dev.60+f819929c
• npm: https://www.npmjs.com/package/@logtape/logtape/v/0.5.0-dev.60
@hongminhee@fosstodon.org
#LogTape is a logging library for #JavaScript and #TypeScript. It provides a simple and flexible logging system that is easy to use and easy to extend. The highlights of LogTape are:
• Zero dependencies
• Designed to be used in libraries as well as apps
• Supports virtually every runtime: #Node.js, #Deno, #Bun, edge functions, and browsers
• Structured logging
• Logger categories (names) are hierarchical
• Dead simple sink (destination) interface
@hongminhee@fosstodon.org
Released v0.4.2 of #LogTape, which is a zero-dependency #logging library for #TypeScript & #JavaScript! Since this version, it work well on #Cloudflare Workers out of box!
• JSR: https://jsr.io/@logtape/logtape@0.4.2
• npm: https://www.npmjs.com/package/@logtape/logtape/v/0.4.2
@fedify@hollo.social
#Fedify offers robust logging capabilities through integration with LogTape. This feature allows you to easily debug and monitor your Fedify app!
To enable #logging, simply install the @logtape/logtape
package and configure it in your app's entry point:
import { configure, getConsoleSink } from "@logtape/logtape";
await configure({
sinks: { console: getConsoleSink() },
filters: {},
loggers: [
{ category: "your-app", sinks: ["console"], level: "debug" },
{ category: "fedify", sinks: ["console"], level: "info" },
],
});
Fedify uses hierarchical categories for fine-grained control over log output. Key categories include ["fedify", "federation", "http"]
for HTTP requests/responses and ["fedify", "federation", "inbox"]
/["fedify", "federation", "outbox"]
for incoming/outgoing activities. (There are more categories.)
With #LogTape integration, you gain valuable insights into your Fedify app's behavior, making troubleshooting and optimization much more straightforward!
@hongminhee@todon.eu
#LogTape is a logging library for #JavaScript and #TypeScript. It provides a simple and flexible logging system that is easy to use and easy to extend. The highlights of LogTape are:
• Zero dependencies
• Designed to be used in libraries as well as apps
• Supports virtually every runtime: #Node.js, #Deno, #Bun, edge functions, and browsers
• Structured logging
• Logger categories (names) are hierarchical
• Dead simple sink (destination) interface
@hongminhee@fosstodon.org