Skip to content

A server-side JavaScript tool that converts log statements to topics/messages and publishes them to an mqtt broker.

License

Notifications You must be signed in to change notification settings

TonyBrobston/logs-to-mqtt-publisher

Repository files navigation

logs-to-mqtt-publisher

A server-side JavaScript tool that converts log statements to topics/messages and publishes them to an mqtt broker. This is intended to be used in docker, but could be consumed as an npm package.

npm version Build Status codecov Dependencies Dev Dependencies Peer Dependencies Known Vulnerabilities All Contributors

Example

{
    log: true,
    logWatches: [
        {
            filePath: '/var/log/unifi-video/motion.log',
            logParses: [
                {
                    topicParse: {
                        regularExpression: '/motion|House West/g',
                        output: '{0}/{1}'
                    },
                    messageParse: {
                        regularExpression: '/start/g',
                        output: '{0}'
                    }
                }
            ]
        }
    ],
    mqtt: {
        host: 'localhost',
        port: '1883',
        username: 'broker',
        password: 'Ypl8%Q1X#4'
    }
}
docker-compose.yaml

Repository example: https://github.com/TonyBrobston/unifi-video-publisher-example

Documentation

start(options: Options): Promise‹void›
stop(): Promise‹void›

Feedback

Do you have an idea for making logs-to-mqtt-publisher better? Add your idea under the issues tab, we'd love to hear about it!

Contributors

Tony Brobston
Tony Brobston

💻

About

A server-side JavaScript tool that converts log statements to topics/messages and publishes them to an mqtt broker.

Resources

License

Stars

Watchers

Forks

Packages

No packages published