
Product
Introducing Webhook Events for Pull Request Scans
Add real-time Socket webhook events to your workflows to automatically receive pull request scan results and security alerts in real time.
@openobserve/pino-openobserve
Advanced tools
This is a transport for the Pino logging library that sends logs to an Openobserve server in batches.
This package requires Node.js version 18.0.0 or later and pino v7+
You can install this package using npm or Yarn.
With npm:
npm install @openobserve/pino-openobserve
With Yarn:
yarn add @openobserve/pino-openobserve
The transport accepts an options object with the following properties:
Property | Required | Default | Description |
---|---|---|---|
url | Yes | - | The URL of your Openobserve server. |
organization | Yes | - | The name of your organization. |
streamName | Yes | - | The name of the stream to which logs should be sent. |
auth | Yes | { username: "", password: "" } | An object with username and password properties for authenticating with the Openobserve server |
batchSize | No | 100 | The number of logs to include in each batch. |
timeThreshold | No | 300000 (5 mins) | The interval, in milliseconds, at which logs should be sent. |
silentSuccess | No | false | A boolean indicating whether to suppress successful operation messages. |
silentError | No | false | A boolean indicating whether to suppress error messages. |
You can use the transport by passing the package name as target, or by importing it directly.
// using require
const pino = require('pino');
// using import
import pino from 'pino';
const logger = pino({
level: 'info',
transport: {
target: '@openobserve/pino-openobserve',
options: {
url: 'https://your-openobserve-server.com',
organization: 'your-organization',
streamName: 'your-stream',
auth: {
username: 'your-username',
password: 'your-password',
},
},
},
});
logger.info('Hello, world!');
logger.info({ lang: 'js', code: 'Node.js' }, 'Logging with JSON');
The way you import the pino
and @openobserve/pino-openobserve
packages depends on whether you're using import
or require
.
// using require
const pino = require('pino');
const OpenobserveTransport = require('@openobserve/pino-openobserve').OpenobserveTransport;
// using import
import pino from 'pino';
import { OpenobserveTransport } from '@openobserve/pino-openobserve';
const logger = pino({
level: 'info',
transport: {
target: OpenobserveTransport,
options: {
url: 'https://your-openobserve-server.com',
organization: 'your-organization',
streamName: 'your-stream',
auth: {
username: 'your-username',
password: 'your-password',
},
},
},
});
logger.info('Hello, world!');
logger.info({ lang: 'js', code: 'Node.js' }, 'Logging with JSON');
In the above examples, the second logger.info
call logs a JSON object containing the properties lang
and code
, along with the message 'Logging with JSON'. This is a common way to include structured data in your logs when using Pino.
This package is licensed under the Apache License, Version 2.0. See the LICENSE
file for more details.
FAQs
Pino transport for Openobserve
We found that @openobserve/pino-openobserve demonstrated a healthy version release cadence and project activity because the last version was released less than a year ago. It has 2 open source maintainers collaborating on the project.
Did you know?
Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.
Product
Add real-time Socket webhook events to your workflows to automatically receive pull request scan results and security alerts in real time.
Research
The Socket Threat Research Team uncovered malicious NuGet packages typosquatting the popular Nethereum project to steal wallet keys.
Product
A single platform for static analysis, secrets detection, container scanning, and CVE checks—built on trusted open source tools, ready to run out of the box.