npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2024 – Pkg Stats / Ryan Hefner

onyan

v1.2.1

Published

A Bunyan plugin that sends JSON logs to an API endpoint. Can be used for NodeJS remote error notification.

Downloads

542

Readme

Onyan [uhn-yuh n]

Pronounced 'Onion', a Bunyan plugin that sends logs to a configured API endpoint that consumes JSON.

Onyan uses request to make HTTP calls to the API endpoint.

Updates

1.1.0

  • Added a new configuration property: the ability to send a simple, handlebars-like schema to Onyan to format how errors are sent.
  • Added getDeepProp() utility to help with schema parsing.
  • Added scrubNewLines() utility to defend against new lines causing Unexpected token errors when parsing strings out of the schema.

Configurations

url

Type: String

The URL of API endpoint.

[ method ]

Type: { "POST", "GET" }

HTTP Method to use, either POST or GET.

[ headers ]

Type: Object

An object with key-value pairs of headers to include with the HTTP request.

[ custom ]

Type: Object

An object with key-value pairs to include with the HTTP request.

[ schema ]

Type: String

A Handlebars-like schema to format how errors are written out to the endpoint. You can include object properties inside {{}} and Onyan will attempt to parse the schema and insert the stream corresponding stream data.

Example

const bigPandaSchema = `{
	"app_key": "<My App Key>",
	"status": "critical",
	"host": "{{hostname}}",
	"check": "PID: {{pid}}",
	"description": "{{err.stack}}"
}`;

bunyan.createLogger({
	name: "myLog",
	stream: new Onyan({
		url: 'https://my.endpoint.com:80',
		method: 'POST',
		headers: {
			'Content-Type': 'application/json'
		},
		custom: {
			json: true
		},
		schema: bigPandaSchema
	})
});