Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/vltansky/elapsed-time-logger
Similiar to console.time() but returns readable elapsed time e.g Label: 1 hour 20 minutes 10.3 seconds
https://github.com/vltansky/elapsed-time-logger
nodejs
Last synced: 3 months ago
JSON representation
Similiar to console.time() but returns readable elapsed time e.g Label: 1 hour 20 minutes 10.3 seconds
- Host: GitHub
- URL: https://github.com/vltansky/elapsed-time-logger
- Owner: vltansky
- License: mit
- Created: 2020-04-20T14:31:49.000Z (almost 5 years ago)
- Default Branch: master
- Last Pushed: 2024-06-13T00:57:47.000Z (8 months ago)
- Last Synced: 2024-10-13T04:25:10.042Z (4 months ago)
- Topics: nodejs
- Language: JavaScript
- Homepage:
- Size: 2.56 MB
- Stars: 1
- Watchers: 2
- Forks: 2
- Open Issues: 20
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# Elapsed time logger
Similiar to console.time() & console.timeEnd() but returns formatted elapsed time `custom label: 4 hours 10 minutes 23.5 seconds` or if less then a second: `540ms`
Works in NodeJS and in browser.![Test](https://github.com/vltansky/elapsed-time-logger/workflows/Test/badge.svg)
[![Coverage Status][coveralls-image]][coveralls-url]
![David](https://img.shields.io/david/vltansky/elapsed-time-logger)
![NPM](https://img.shields.io/npm/l/elapsed-time-logger)[coveralls-image]: https://img.shields.io/coveralls/github/vltansky/elapsed-time-logger
[coveralls-url]: https://coveralls.io/github/vltansky/elapsed-time-loggerpackage depends on [Browser-hrtime](https://github.com/vltansky/browser-hrtime)
**1.28 KB** (minified and gzipped)
## Installation
```bash
npm install elapsed-time-logger # yarn add elapsed-time-logger
```## Examples
### NodeJS
```js
const elapsed = require("elapsed-time-logger");
// chalk is't required, added as example to show that you can use colors in output
const chalk = require('chalk');
// elapsed is similliar to console.time() & console.timeEnd()
elapsed.start('label');
elapsed.start('label_id');
setTimeout(()=>{
elapsed.end('label');//output: label 801ms
elapsed.end('label_id', 'Text that goes here will override label on output');
// output: Text that goes here will override label on output 801ms
}, 800);
// if parameter label is not provided, start() will return an instance
const elapsedTimer = elapsed.start();
const elapsedTimer2 = elapsed.start();
setTimeout(()=>{
elapsedTimer2.end(chalk.green('you can use colors here, try chalk or colors packages:'));
// output: you can use colors here, try chalk or colors packages: 806ms
const time = elapsedTimer.get();//return 806ms
console.log(time);
elapsedTimer.end('finished:');// output: finished: 806ms
}, 800);
```### Web with module
```js
import elapsed from 'elapsed-time-logger';elapsed.start('testoverride');
setTimeout(()=>{
elapsed.end('testoverride', 'override label');
}, 100);elapsed.start('vlad');
setTimeout(()=>{
const test = elapsed.get('vlad');
console.log(test);
}, 1200);// ElapsedLogger is similliar to console.time() & console.timeEnd()
elapsed.start('label');
elapsed.start('timer label');
setTimeout(()=>{
elapsed.end('label');
elapsed.end('timer label');
}, 800);// or use ElapsedLogger as an instance (recommended)
const elapsedTimer = elapsed.start();
setTimeout(()=>{
const t = elapsedTimer.get();
console.log(t);
elapsedTimer.end('finished:');
}, 800);
```## Web
```html```
```javascript
elapsedLogger.start('test2');
setTimeout(()=>{
elapsedLogger.end('test2');
}, 1300);elapsedLogger.start('test');
setTimeout(()=>{
elapsedLogger.end('test');
}, 1300);elapsedLogger.start('testoverride');
setTimeout(()=>{
elapsedLogger.end('testoverride', 'override label');
}, 100);elapsedLogger.start('vlad');
setTimeout(()=>{
const test = elapsedLogger.get('vlad');
console.log(test);
}, 1200);// ElapsedLogger is similliar to console.time() & console.timeEnd()
elapsedLogger.start('label');
elapsedLogger.start('timer label');
setTimeout(()=>{
elapsedLogger.end('label');
elapsedLogger.end('timer label');
}, 800);// or use ElapsedLogger as an instance (recommended)
const elapsedTimer = elapsedLogger.start();
// const elapsedTimer2 = elapsedLogger.start();
console.log('smth');
setTimeout(()=>{
const t = elapsedTimer.get();
console.log(t)
elapsedTimer.end('finished:');
}, 800);
```## Contribution
Clone project from Github
```bash
git clone [email protected]:vltansky/elapsed-time-logger.git
```Install npm packages
```bash
cd elapsed-time-logger
npm install
```Build sources
```bash
npm run build
```
Test```bash
npm run test
```
=======
### License[MIT](LICENSE)