TransportConfig #
Transport configuration types that determine how and where logs are written.
Type Definition #
The TransportConfig
type can be one of the following:
type TransportConfig =
| TransportPresetOptions
| TransportMultiOptionsWithPreset
| pino.TransportSingleOptions
| pino.TransportPipelineOptions;
Types #
TransportPresetOptions #
Configures a preset transport. See PresetOptions for details.
TransportMultiOptionsWithPreset #
interface TransportMultiOptionsWithPreset {
targets: readonly (
| TransportPresetOptions
| pino.TransportTargetOptions
| pino.TransportPipelineOptions
)[];
levels?: Record<string, number>;
dedupe?: boolean;
}
Configuration for multiple transports:
targets
: Array of transport configurationslevels
: Optional mapping of level names to their numeric valuesdedupe
: Optional flag to enable/disable deduplication of logs
TransportSingleOptions #
interface TransportSingleOptions {
target: string;
options?: object;
level?: string;
}
Configuration for a single transport:
target
: The transport module nameoptions
: Optional configuration for the transportlevel
: Optional minimum log level
TransportPipelineOptions #
interface TransportPipelineOptions {
pipeline: Array<{
target: string;
options?: object;
}>;
}
Configuration for a pipeline of transports:
pipeline
: Array of transport configurations that will process logs in sequence
Examples #
Using a Preset #
const config: TransportConfig = {
preset: 'stdout',
level: 'info',
};
Using Multiple Transports #
const config: TransportConfig = {
targets: [
{ preset: 'stdout' },
{
preset: 'loki',
presetOptions: {
host: 'http://localhost:3100',
},
},
],
dedupe: true,
};
Using a Single Transport #
const config: TransportConfig = {
target: 'pino/file',
options: {
destination: '/var/log/app.log',
},
};
Using a Pipeline #
const config: TransportConfig = {
pipeline: [
{
target: 'pino-transport-ecs',
options: { serviceName: 'my-service' },
},
{
target: 'pino-elasticsearch',
options: {
node: 'http://localhost:9200',
index: 'logs',
},
},
],
};
Edit this page on Github(opens new window)