0.95.0 • Published 1 year ago

@curium.rocks/json-chronicler v0.95.0

Weekly downloads
-
License
MIT
Repository
github
Last release
1 year ago

Json-Chronicler

Quality Gate Status Coverage Security Rating

What does it do?

This library facilitates saving records to local files in JSON format. It will append a record to a json file and honor chronological rotation settings.

How to install

npm install --save @curium.rocks/json-chronicler

How do I use it?

Setup your options

import {JsonChroniclerOptions} from "@curium.rocks/json-chronicler";

const logOptions: JsonChroniclerOptions = {
    name: "yourLoggerName", // used for prefixing the log files
    logDirectory: "./logs", // path to your log directory
    rotationSettings: {
        days: 7,
        hours: 1,
        minutes: 5,
        milliseconds: 750
    } // sums all the properties and will rotate the logs on that interval
}

Create and save a record

import {JsonChronicler} from "@curium.rocks/json-chronicler";
import {IChronicler} from "@curium.rocks/data-emitter-base";

const chronciler: IChronicler = new JsonChronicler(logOptions);
await chronciler.saveRecord({
    toJSON: () => {
        return {
            property1: 0.123,
            property2: "blue"
        }
    }
})

Make your models compatible

import {IJsonSerializable} from "@curium.rocks/data-emitter-base";

/**
 * Example implementation of a model that could be directly passed to
 * a chronicler
 */
export class Model implements IJsonSerializable {
    private hidden = "will not be saved";
    private property1 = 0.123;
    private property2 = "blue";

    /**
     * Provide a map with the desired names and values
     * @return {Record<string, unknown>} map that will be serialized
     */
    toJSON(): Record<string, unknown> {
        return {
            desiredSavedPropName1: this.property1,
            desiredSavedPropName2: this.property2
        };
    }
}
0.93.0

1 year ago

0.90.0

1 year ago

0.94.0

1 year ago

0.87.0

1 year ago

0.95.0

1 year ago

0.91.0

1 year ago

0.88.0

1 year ago

0.92.0

1 year ago

0.89.0

1 year ago

0.85.0

2 years ago

0.81.0

2 years ago

0.78.0

2 years ago

0.74.0

2 years ago

0.70.0

2 years ago

0.67.0

2 years ago

0.86.0

2 years ago

0.82.0

2 years ago

0.79.0

2 years ago

0.75.0

2 years ago

0.71.0

2 years ago

0.68.0

2 years ago

0.83.0

2 years ago

0.76.0

2 years ago

0.72.0

2 years ago

0.69.0

2 years ago

0.84.0

2 years ago

0.80.0

2 years ago

0.77.0

2 years ago

0.73.0

2 years ago

0.62.0

2 years ago

0.43.0

2 years ago

0.20.0

2 years ago

0.59.0

2 years ago

0.36.0

2 years ago

0.55.0

2 years ago

0.13.0

2 years ago

0.17.0

2 years ago

0.32.0

2 years ago

0.51.0

2 years ago

0.29.0

2 years ago

0.48.0

2 years ago

0.25.0

2 years ago

0.44.0

2 years ago

0.7.0

2 years ago

0.63.0

2 years ago

0.21.0

2 years ago

0.40.0

2 years ago

0.37.0

2 years ago

0.56.0

2 years ago

0.33.0

2 years ago

0.14.0

2 years ago

0.18.0

2 years ago

0.10.0

2 years ago

0.52.0

2 years ago

0.49.0

2 years ago

0.26.0

2 years ago

0.45.0

2 years ago

0.22.0

2 years ago

0.8.0

2 years ago

0.4.0

2 years ago

0.64.0

2 years ago

0.41.0

2 years ago

0.60.0

2 years ago

0.19.0

2 years ago

0.38.0

2 years ago

0.57.0

2 years ago

0.34.0

2 years ago

0.11.0

2 years ago

0.15.0

2 years ago

0.53.0

2 years ago

0.30.0

2 years ago

0.46.0

2 years ago

0.23.0

2 years ago

0.9.0

2 years ago

0.5.0

2 years ago

0.42.0

2 years ago

0.65.0

2 years ago

0.61.0

2 years ago

0.39.0

2 years ago

0.58.0

2 years ago

0.35.0

2 years ago

0.12.0

2 years ago

0.16.0

2 years ago

0.54.0

2 years ago

0.31.0

2 years ago

0.50.0

2 years ago

0.28.0

2 years ago

0.66.0

2 years ago

0.47.0

2 years ago

0.24.0

2 years ago

0.6.0

2 years ago

0.1.1-27

2 years ago

0.1.1-28

2 years ago

0.1.1-29

2 years ago

0.1.1-23

2 years ago

0.1.1-24

2 years ago

0.1.1-25

2 years ago

0.1.1-26

2 years ago

0.1.1-41

2 years ago

0.1.1-40

2 years ago

0.1.1-38

2 years ago

0.1.1-39

2 years ago

0.3.0

2 years ago

0.2.0

2 years ago

0.1.1-34

2 years ago

0.1.1-35

2 years ago

0.1.1-36

2 years ago

0.1.1-37

2 years ago

0.1.1-30

2 years ago

0.1.1-31

2 years ago

0.1.1-32

2 years ago

0.1.1-33

2 years ago

0.1.1-22

2 years ago

0.1.1-19

2 years ago

0.1.1-20

2 years ago

0.1.1-21

2 years ago

0.1.1-16

2 years ago

0.1.1-17

2 years ago

0.1.1-18

2 years ago

0.1.1-14

2 years ago

0.1.1-15

2 years ago

0.1.1-13

3 years ago

0.1.1-12

3 years ago

0.1.1-11

3 years ago

0.1.1-10

3 years ago

0.1.1-9

3 years ago

0.1.1-8

3 years ago

0.1.1-7

3 years ago

0.1.1-4

3 years ago

0.1.1-3

3 years ago

0.1.1-6

3 years ago

0.1.1-5

3 years ago

0.1.1-2

3 years ago

0.1.1-1

3 years ago

0.1.1-0

3 years ago