Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/kfatehi/apple-syslog-stream
Provides a stream parser for Apple Syslog.
https://github.com/kfatehi/apple-syslog-stream
Last synced: 19 days ago
JSON representation
Provides a stream parser for Apple Syslog.
- Host: GitHub
- URL: https://github.com/kfatehi/apple-syslog-stream
- Owner: kfatehi
- License: isc
- Created: 2016-08-31T22:48:10.000Z (over 8 years ago)
- Default Branch: master
- Last Pushed: 2016-08-31T23:03:54.000Z (over 8 years ago)
- Last Synced: 2025-01-03T19:17:21.671Z (23 days ago)
- Language: JavaScript
- Homepage:
- Size: 2.93 KB
- Stars: 0
- Watchers: 2
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# apple-syslog-stream
Provides a stream parser for Apple Syslog.
## Usage
**test.js**
```
var appleSyslog = require('./index.js');var proc = appleSyslog.spawn({
args: ['-w', 10]
});proc.stdout.pipe(appleSyslog.parser()).on('data', function(data) {
console.log(data);
});
```the `data` looks like this
```
{ ASLMessageID: '1324674',
Time: '1472683571',
TimeNanoSec: '277591000',
Level: '5',
PID: '81',
UID: '0',
GID: '0',
ReadGID: '80',
Host: 'dhcp-v016-188',
Sender: 'launchservicesd',
Facility: 'kern',
Message: 'SecTaskLoadEntitlements failed error=22',
ASLSHIM: '2',
SenderMachUUID: 'blablalba' }
```* the `data` event gets fired for every new log line, with a parsed object like the above
* the `args` passed into `spawn` can be can be any of those that `syslog` will accept.
* `-w 10` is the option that makes `syslog` stay running, watching for any changes, pushing them to stdout.
* of course parsing that into a stream of objects is the other concern taken care of by this lib
* the `10` there is actually the default behavior (show me the last 10 lines immediately upon starting). you can make this like 100 or 1000 to go back in time or w/e
* you can also just leave off the `args` or just dont pass anything into `spawn` to get the entire syslog available; in this case the program will exit (only `-w` will keep it open)