Giter Club home page Giter Club logo

sentinel's Introduction

sentinel

Watches a folder and does things when criteria is met.

Setting up as a service

Sentinel can run as a service using many daemon managers. Here are some recommendations:

windows

nssm

Linux / Mac

forever

Configuration

Sentinel can be configured using JSON, JSON5, YML or even JavaScript files for configuration. You specifiy the input format by simply naming your default config file with the respective extension (.json, .json5, .yml or .js).

You can specify where Sentinel should get it's config by setting the environment variable SENTINEL_CONFIG_DIR to the folder your configuration file is located, otherwise Sentinel will look for a folder called config in the root of it's current folder.

Container and orchistration considerations

Because Sentinel can get configuration from anywhere, you can simply provide it a config dir through docker environment settings, but Sentinel can go further than that. If you specify a standard NODE_ENV environment variable, you can also tell sentinel to switch config between specific environment configurations within an indentical configuration folder shared throughout your platform.

For example, if you set NODE_ENV to 'production' sentinel will look for a config file called 'production', if you set it to 'development' ir will look for a file called 'development', and so forth. In this way, you can both configure Sentinel instances to configure themselves differently through the environment and distribute identical files (using NODE_ENV) or just use different folders through SENTINEL_CONFIG_DIR. It's up to you.

Debuggging

Sentinel supports extensive debugging in case something goes wrong. Configure debugging through the DEBUG environment variable, or set the debug path in configuration options.

If you set the debug path to "", everything that happens will be outputted. If you only want to log a particular set of events, use wildcards. For example, if you only want to debug sentinel watch functions, use "sentinelโŒš". If you only want to watch sentinel triggers, use "sentinel:trigger:*", etc. Here is a complete list of debug paths and what they do...

sentinel

Any application level events like loading, starting and stopping.

sentinel:watch

Any watch events that took place

Configuration options

Examples are given in YML for simplicity.

sentinel's People

Contributors

onexdata avatar

Watchers

 avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.