Studio
Pinorama Studio is a web-based UI and CLI tool for viewing, filtering, and analyzing Pino logs. It can run as a standalone viewer connected to an existing Pinorama Server, or start an embedded server to receive piped logs directly.
Installation
Install globally:
npm i -g pinorama-studiopnpm i -g pinorama-studioyarn global add pinorama-studioUsage
Pipe logs from any Node.js application
node app.js | pinorama --openThis starts an embedded Pinorama Server, ingests the piped logs, and opens the Studio UI in your browser.
Connect to an existing server
If you already have a Pinorama Server running, launch Studio as a standalone viewer:
pinorama --open --server-prefix http://localhost:3000/pinoramaWith a Fastify application
node server.js | pinorama --open --preset fastifyUse the fastify preset to get Fastify-specific columns like request method, URL, and status code.
Server Mode
Server mode is automatically enabled when stdin is piped (i.e. !process.stdin.isTTY). You can also enable it explicitly with the --server flag.
When server mode is active:
- An embedded Pinorama Server starts on the configured
--hostand--port - The selected preset provides the database schema and introspection config
- Piped stdin is streamed through a Pinorama Transport into the embedded server
- The Studio UI connects to the embedded server automatically
When server mode is not active, Studio runs as a static web app that you can point at any remote Pinorama Server.
CLI Options
pinorama [options]| Flag | Alias | Type | Default | Description |
|---|---|---|---|---|
--help | -h | Display help message | ||
--version | -v | Show version | ||
--host | -H | string | "localhost" | Web server host |
--port | -P | number | 6200 | Web server port |
--open | -o | boolean | false | Open Studio in browser |
--logger | -l | boolean | false | Enable Fastify request logging |
--server | -s | boolean | false | Start embedded Pinorama Server |
--server-prefix | -e | string | "/pinorama" | Server endpoint prefix |
--server-db-path | -f | string | <tmpdir>/pinorama.msp | Database file path |
--admin-secret | -k | string | "your-secret" | Server admin secret key |
--preset | -p | string | "pino" | Preset name (pino or fastify) |
--batch-size | -b | number | 10 | Transport batch size |
--flush-interval | number | 100 | Transport flush interval (ms) |
Examples
Start with default settings:
node app.js | pinoramaOpen browser automatically with Fastify preset:
node app.js | pinorama --open --preset fastifyUse a custom port and persist database:
node app.js | pinorama --port 8080 --server-db-path ./logs.mspEnable Fastify logging for the Studio server itself:
node app.js | pinorama --open --logger