mirror of
https://github.com/svemagie/indiekit-endpoint-activitypub.git
synced 2026-04-02 15:44:58 +02:00
feat: add Fedify LogTape logging for delivery visibility
Configure LogTape to route Fedify's internal logs (federation, vocab, delivery) to console at info level. This makes activity delivery attempts, HTTP signature issues, and queue processing visible in container logs.
This commit is contained in:
@@ -16,6 +16,7 @@ import {
|
||||
createFederation,
|
||||
importSpki,
|
||||
} from "@fedify/fedify";
|
||||
import { configure, getConsoleSink, getLogger } from "@logtape/logtape";
|
||||
import { MongoKvStore } from "./kv-store.js";
|
||||
import { registerInboxListeners } from "./inbox-listeners.js";
|
||||
|
||||
@@ -29,6 +30,9 @@ import { registerInboxListeners } from "./inbox-listeners.js";
|
||||
* @param {boolean} options.storeRawActivities - Whether to store full raw JSON
|
||||
* @returns {{ federation: import("@fedify/fedify").Federation }}
|
||||
*/
|
||||
// Track whether LogTape has been configured (can only call configure() once)
|
||||
let _logtapeConfigured = false;
|
||||
|
||||
export function setupFederation(options) {
|
||||
const {
|
||||
collections,
|
||||
@@ -37,6 +41,26 @@ export function setupFederation(options) {
|
||||
storeRawActivities = false,
|
||||
} = options;
|
||||
|
||||
// Configure LogTape for Fedify delivery logging (once per process)
|
||||
if (!_logtapeConfigured) {
|
||||
_logtapeConfigured = true;
|
||||
configure({
|
||||
sinks: {
|
||||
console: getConsoleSink(),
|
||||
},
|
||||
loggers: [
|
||||
{
|
||||
// All Fedify logs — federation, vocab, delivery, HTTP signatures
|
||||
category: ["fedify"],
|
||||
sinks: ["console"],
|
||||
lowestLevel: "info",
|
||||
},
|
||||
],
|
||||
}).catch((error) => {
|
||||
console.warn("[ActivityPub] LogTape configure failed:", error.message);
|
||||
});
|
||||
}
|
||||
|
||||
const federation = createFederation({
|
||||
kv: new MongoKvStore(collections.ap_kv),
|
||||
queue: new InProcessMessageQueue(),
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
{
|
||||
"name": "@rmdes/indiekit-endpoint-activitypub",
|
||||
"version": "1.0.6",
|
||||
"version": "1.0.7",
|
||||
"description": "ActivityPub federation endpoint for Indiekit via Fedify. Adds full fediverse support: actor, inbox, outbox, followers, following, syndication, and Mastodon migration.",
|
||||
"keywords": [
|
||||
"indiekit",
|
||||
|
||||
Reference in New Issue
Block a user