log-to-slack

2.0.4 • Public • Published

Log to Slack

Loads and parses logs from remote servers over SSH and sends some of them to a specified Slack channel

Dependency Status devDependency Status

Installing

npm install -g log-to-slack
log-to-slack --config path/to/config.json

If you are on ubuntu you might need to symlink node to nodejs http://stackoverflow.com/a/18130296/1223319

sudo update-alternatives --install /usr/bin/node node /usr/bin/nodejs 10

Available options

Command line

--debug Run in debug mode

  • Disables posting to Slack
  • Outputs more stuff in the console

Config file

host What host to use for the connection
port What port to use for the connection
username What username to use when connecting
password What password to use when connecting

Example config file

Available modules

Apache2 error logs

skipStrings: Array of strings to match and skip if found.

Example

"skipStrings"[
    "robots.txt",
    "favicon.ico"
]

Default: []

useVulnList: Use web-vuln-scan-list to exclude common paths used by vulnerability scanners from showing up as errors.

Example

"useVulnList"false

Default: true

Apache2 access logs (4xx & 5xx)

lineCount: The number of lines to lookback when parsing the log.

Example

"lineCount"50000

Default: 500000

skipStrings: Array of strings to match and skip if found.

Example

"skipStrings"[
    "robots.txt",
    "favicon.ico"
]

Default: []

skipCodes: Array of response codes that we shouldn't report.

Example

"skipCodes"[
    408
]

Default: []

useVulnList: Use web-vuln-scan-list to exclude common paths used by vulnerability scanners from showing up as errors.

Example

"useVulnList"false

Default: true

Symfony logs

path: The path to the log file.

Example

"path""/my/path/to/my/prod.log"

Default: ""

skipStrings: Array of strings to match and skip if found.

Example

"skipStrings"[
    "robots.txt",
    "favicon.ico"
]

Default: []

useVulnList: Use web-vuln-scan-list to exclude common paths used by vulnerability scanners from showing up as errors.

Example

"useVulnList"false

Default: true

nginx error logs

skipStrings: Array of strings to match and skip if found.

Example

"skipStrings"[
    "robots.txt",
    "favicon.ico"
]

Default: []

useVulnList: Use web-vuln-scan-list to exclude common paths used by vulnerability scanners from showing up as errors.

Example

"useVulnList"false

Default: true

Example config

{
    "slackApiToken": "my-slack-api-key",
 
    "slackChannel": "#syslog",
    "slackUsername": "Logan",
    "slackIconUrl": "http://i.imgur.com/JKDkKU0.png",
 
    "checkInterval": 30000,
 
    "servers": [
        {
            "host": "myserver.myhost.com",
            "port": "myport",
            "username": "username",
            "password": "password",
            "services": {
                "apache2": true,
                "symfony": {
                    "path": "/path/to/my/prod.log"
                }
            }
        },
        {
            "host": "54.175.129.157",
            "username": "anotheruser",
            "password": "anotherpassword",
            "services": {
                "apache2": true,
                "apache2Access": {
                    "skipCodes": [
                        408
                    ],
                    "skipStrings": [
                        "favicon.ico",
                        "robots.txt"
                    ],
                    "lineCount": 50000
                }
            }
        }
    ]
}

Readme

Keywords

none

Package Sidebar

Install

npm i log-to-slack

Weekly Downloads

3

Version

2.0.4

License

MIT

Last publish

Collaborators

  • kokarn