# yalm

> A simple logging module.

Latest version **4.1.0** (published 2017-09-15) · MIT license · 0 weekly downloads

## Install

```sh
npm install yalm
pnpm add yalm
yarn add yalm
bun add yalm
```

## Health

**Score 15/100 (F)** — status: abandoned.

Positive: no vulnerabilities.

Warnings: low downloads; no types; no esm support.

Negative: abandoned; low maintenance score.

## Facts

| | |
|---|---|
| Version | 4.1.0 |
| Published | 2017-09-15 |
| First published | 2015-08-02 |
| Weekly downloads | 0 |
| License | MIT |
| TypeScript types | none |
| Module format | CommonJS |
| Dependencies | 1 |
| Known vulnerabilities | 0 |
| Install scripts | no |
| GitHub stars | 3 |
| Author | Sebastian Raff |
| Maintainers | hobbyquaker |
| Keywords | debug, log, logging, tools, console, stdout, stderr |

## Links

- npm: https://www.npmjs.com/package/yalm
- Repository: https://github.com/hobbyquaker/yalm
- Issues: https://github.com/hobbyquaker/yalm/issues
- npm.io page: https://npm.io/package/yalm

## Dependencies (1)

- [ansi-styles](https://npm.io/package/ansi-styles.md) ^3.2.0

## Alternatives

- [cli-color](https://npm.io/package/cli-color.md) — 3.4M weekly downloads
- [log](https://npm.io/package/log.md) — 1.3M weekly downloads
- [logstash-client](https://npm.io/package/logstash-client.md) — 4.5K weekly downloads
- [@nocobase/plugin-logger](https://npm.io/package/@nocobase/plugin-logger.md) — 2.0K weekly downloads
- [child-process-debug](https://npm.io/package/child-process-debug.md) — 695 weekly downloads

## Recent versions

- 4.1.0 (latest) — 2017-09-15
- 4.0.2 — 2016-07-20
- 4.0.0 — 2016-07-20
- 3.0.0 — 2016-06-10
- 2.0.1 — 2016-05-08
- 2.0.0 — 2015-09-07
- 1.0.1 — 2015-08-02
- 1.0.0 — 2015-08-02

## README

# yalm

[![npm version](https://badge.fury.io/js/yalm.svg)](https://badge.fury.io/js/yalm) 
[![Dependency Status](https://img.shields.io/gemnasium/hobbyquaker/yalm.svg?maxAge=2592000)](https://gemnasium.com/github.com/hobbyquaker/yalm)
[![Build Status](https://travis-ci.org/hobbyquaker/yalm.svg?branch=master)](https://travis-ci.org/hobbyquaker/yalm)
[![XO code style](https://img.shields.io/badge/code_style-XO-5ed9c7.svg)](https://github.com/sindresorhus/xo)
[![License][mit-badge]][mit-url]

A simple javascript logging module for Node.js and the Browser.

Offers 4 logging levels, adds timestamp, severity and colors (even in browser console if possible). 
Logs via console.log, console.warn (if available) and console.error.

## usage

```Javascript
log.debug('a debug message');
log.info('an info message');
log.warn('a warning message');
log.error('an error message');

log.info('array:', [null, 1, 'string', true]);
log.info('buffer:', new Buffer([32, 32]));
log('object:', {"key": "val"});
```

## output of above usage example

#### Node.js
![Node.js sample output](nodejs.png)

#### Browser
![Browser sample output](browser.png)


## options

You can set desired loglevel...
```Javascript
log.setLevel('debug'); // default: 'info'. possible values: 4, 'debug', 3, 'info', 2, 'warn', 1, 'error', 0, 'silent'
```

... and you can disable printing of timestamps, severity and colors
```Javascript
log.setTimestamp(false);
log.setSeverity(false);
log.setColor(false);
```

## aliases

made for humans...
```Javascript
log('...'); // is an alias of log.info('...');
log.warning('...'); // is an alias of log.warn('...');
log.err('...'); // is an alias of log.error('...');
```

## change styling

if you want another timestamp format overwrite the log.ts function...
```Javascript
log.ts = function () {
    // seconds since epoch
    return '' + Math.floor((new Date()).getTime() / 1000);
};
```

... if you want to change the severity strings overwrite log.map properties
```Javascript
log.map.debug = 'DEBUG:';
log.map.info = 'INFO:';
log.map.warn = 'WARNING:';
log.map.error = 'ERROR:';
```

## custom log targets

if you want to log in a file or smth you can just overwrite the methods log.stdout, log.stdwrn and log.stderr with your own logging function.
```Javascript
log.stderr = log.stdwrn = log.stdout = function () {
    fs.appendFile('log.txt', Array.prototype.slice.call(arguments).join(' '));
};
```


## license

MIT © [Sebastian Raff](https://github.com/hobbyquaker)


[mit-badge]: https://img.shields.io/badge/License-MIT-blue.svg?style=flat
[mit-url]: LICENSE

---
_Source: https://npm.io/package/yalm · Machine-readable twin of the npm.io package page. Health data is recomputed on every publish._
