Logging
Configure logging output for the crawler.
Feedstock uses a simple, pluggable logging interface.
Built-in Loggers
ConsoleLogger
Logs to stdout/stderr with level filtering:
import { ConsoleLogger } from "feedstock";
const logger = new ConsoleLogger({
level: "debug", // "debug" | "info" | "warn" | "error"
tag: "my-app", // Prefix for log lines
});
logger.info("Starting crawl");
// [my-app] Starting crawlSilentLogger
No output. Used by default when verbose: false.
import { SilentLogger } from "feedstock";
const logger = new SilentLogger();
// All methods are no-opsEnabling Verbose Mode
const crawler = new WebCrawler({ verbose: true });
// Equivalent to using ConsoleLogger with level "debug"Custom Logger
Implement the Logger interface:
import type { Logger } from "feedstock";
const myLogger: Logger = {
debug(msg, data) { /* ... */ },
info(msg, data) { /* ... */ },
warn(msg, data) { /* ... */ },
error(msg, data) { /* ... */ },
};
const crawler = new WebCrawler({ logger: myLogger });This makes it easy to integrate with any logging library (pino, winston, etc.).