mongoose-backup
TypeScript icon, indicating that this package has built-in type declarations

3.0.7 • Public • Published

mongoose-backup

Do you need my help? Visit our Discord server.

NPM Downloads License

Node Version >= 16.16.0

Installation

npm i mongoose-backup --save
# or
yarn add mongoose-backup

Importing

// CJS
const { MongooseBackup } = require("mongoose-backup");
const Backup = new MongooseBackup({
    url: "{mongodb_url}",
    location: "Europe/Istanbul" // optional, default: Europe/Istanbul
});

// ESM
import { MongooseBackup } from "mongoose-backup";
const Backup = new MongooseBackup({
    url: "{mongodb_url}",
    location: "Europe/Istanbul" // optional, default: Europe/Istanbul
});

Events

Name Returns
connected Object: url, location
ping Object: message, url, location, time
backupError String
githubBackup Object: time, total, items
localizeBackup Object: time, total, items

Types

url: String,
location: String,
time: Date,
total: Number, // Total Size of Documents.
items: Number // Total Size of Document items.

Usage

Backup with Localize

// ESM
import { MongooseBackup } from "mongoose-backup";
const Backup = new MongooseBackup({
    url: "mongodb://localhost:27017"
});

Backup.on('connected', () => {
    Backup.Localize({
        per: 'minutes' // minutes, hours, daily, monthly, yearly
    });
});

Backup.on("localizeBackup", (data: IEvents) => {
    console.log(`Total ${data.total} documents with ${data.items} items backed up.`);
});

Backup with Github

// ESM
import { MongooseBackup } from "mongoose-backup";
const Backup = new MongooseBackup({
    url: "mongodb://localhost:27017"
});

Backup.on('connected', () => {
    Backup.Github({
        key: "ghp_XXXX",
        per: "daily",
        options: {
            owner: "clqu",
            repo: "empty-repo",
        }
    });
});

Backup.on("githubBackup", (data: IEvents) => {
    console.log(`Total ${data.total} documents with ${data.items} items backed up.`);
});

Example File

// ESM
import { MongooseBackup, IEvents } from "mongoose-backup";

const Backup = new MongooseBackup({
    url: "mongodb://localhost:27017/workspace",
    location: "Europe/Istanbul"
});

Backup.on("connected", (data: IEvents) => {
    console.log(`Connected to ${data.url}!`);
    // Backup.Github({
    //     key: "ghp_XXX",
    //     per: "minutes",
    //     options: {
    //         owner: "clqu",
    //         repo: "empty-repo",
    //     }
    // });

    Backup.Localize({
        per: "minutes"
    });
});

Backup.on("backupError", (message: string) => {
    console.log(message);
});

Backup.on("ping", (data: IEvents) => {
    console.log(`Mongoose Backup is alive. Location: ${data.location}, Logger: ${data.logger}, URL: ${data.url}, Time: ${data.time}`);
});

Backup.on("githubBackup", (data: IEvents) => {
    console.log(`[GitHub]: Total ${data.total} documents with ${data.items} items backed up.`);
});

Backup.on("localizeBackup", (data: IEvents) => {
    console.log(`[Localize]: Total ${data.total} documents with ${data.items} items backed up.`);
});






Developed with ❤️ by Void Development

Versions

Current Tags

VersionDownloads (Last 7 Days)Tag
3.0.72latest

Version History

VersionDownloads (Last 7 Days)Published
3.0.72
3.0.60
3.0.50
3.0.40
3.0.30
3.0.20
3.0.10
3.0.00
2.2.20
2.2.10
2.2.00
2.1.00
2.0.80
2.0.70
2.0.60
2.0.50
2.0.40
2.0.30
2.0.20
2.0.10
2.0.00
1.0.40
1.0.30
1.0.20
1.0.10
1.0.00

Package Sidebar

Install

npm i mongoose-backup

Weekly Downloads

2

Version

3.0.7

License

MIT

Unpacked Size

16.4 kB

Total Files

15

Last publish

Collaborators

  • clqu