.vscode | ||
test | ||
ts | ||
.gitignore | ||
license | ||
npmextra.json | ||
package.json | ||
pnpm-lock.yaml | ||
readme.md |
@pushrocks/smartlog
minimalistic distributed and extensible logging tool
Availabililty and Links
Status for master
Usage
Use TypeScript for best in class instellisense.
smartlog id s minimal logging package that provides a consistent experience across the complete logging stack. Smartlog allows you to create a logger instance like this:
import { Smartlog } from '@pushrocks/smartlog';
const logger = new Smartlog({
{
company: 'My awesome company',
companyunit: 'my awesome cloud team',
containerName: 'awesome-container',
environment: 'kubernetes-production',
runtime: 'node',
zone: 'zone x'
}
})
logger.log('silly', `a silly statement`); // log levels are shown to you by the IDE
There is also a default logger available that you can use:
import { Smartlog, defaultLogger } from '@pushrocks/smartlog';
export class MyAwesomeClass {
constructor(public logger: Smartlog = defaultLogger) {
// what happens here that a instance of this class will have instance.logger available
// if you set a custom logger, than that will be used, if not the default logger.
}
}
Destinations
smartlog supports different kinds of destinations.
The following destinations are available:
- @pushrocks/smartlog-destination-local - outputs logs to the local console in a colorful, nice to read way.
- @pushrocks/smartlog-destination-devtools - outputs logs into the browser console in a colorful, nice to read way.
- @pushrocks/smartlog-destination-receiver - sends logs to a smartlog receiver (more about that below)
- @mojoio/scalyr - an scalyr API package that comes with a smartlog log destination included
- @mojoio/elasticsearch - an elasticsearch API package that comes with a smartlog destination included
Adding a log destination
// TBD
Contribution
We are always happy for code contributions. If you are not the code contributing type that is ok. Still, maintaining Open Source repositories takes considerable time and thought. If you like the quality of what we do and our modules are useful to you we would appreciate a little monthly contribution: You can contribute one time or contribute monthly. :)
For further information read the linked docs at the top of this readme.
MIT licensed | © Lossless GmbH | By using this npm module you agree to our privacy policy