Skip to content

Instantly share code, notes, and snippets.

View faxm0dem's full-sized avatar
⌨️
Typing…

Fabien Wernli faxm0dem

⌨️
Typing…
View GitHub Profile
@faxm0dem
faxm0dem / syslog-ng.conf
Created November 28, 2015 21:24
syslog-ng file destination
template t_logformat {
template("$ISODATE $HOST <$FACILITY.$PRIORITY> $LEGACY_MSGHDR$MSG\n");
template_escape(no);
};
destination d_remote_by_host {
file("/var/syslog-ng/remote/$YEAR/$MONTH/$DAY/by-host/${HOST}" template(t_logformat));
};
@faxm0dem
faxm0dem / warn-expire.clj
Created November 25, 2015 09:30
riemann warn on expired event
(where (service "riemann streams rate")
(where (expired? event)
(with {:state "warning" :ttl 3600}
indexer)))
@faxm0dem
faxm0dem / syslog_ng-exec.sh
Created November 25, 2015 08:26
collecd Exec sudo
#!/bin/ksh
INTERVAL=10
HOSTNAME="${COLLECTD_HOSTNAME:-$(/bin/hostname)}"
HOSTNAME=${HOSTNAME%%.in2p3.fr}.in2p3.fr
SUDO=sudo
SYSLOG_NG_CTL="/sbin/syslog-ng-ctl"
[ -x $SYSLOG_NG_CTL ] || SYSLOG_NG_CTL="/usr$SYSLOG_NG_CTL"
AWK="/bin/awk"
[ -x $AWK ] || AWK="awk"
@faxm0dem
faxm0dem / riemann.config.clj
Created November 16, 2015 14:00
Riemann.io exceptions to events
;; watchdog-cfg is just a hash with host, port, etc.
(streams
;; irrelevant code ommited :)
(where (service #"riemann server")
(let [send-watchdog (forward (riemann.client/tcp-client watchdog-cfg))]
(fn watchdog-sending [event]
(try (send-watchdog event)
(catch Exception exc
(tell-ops (utils/exception->event exc))))))))
@faxm0dem
faxm0dem / hiera-data.yaml
Last active November 2, 2015 08:47
syslog-ng facter integration
---
syslog_ng::rewrite:
r_sdata_facter:
params:
- set:
- '"%{productname}"'
- value: '".SDATA.facter.productname"'
- set:
- '"%{osfamily}"'
- value: '".SDATA.facter.osfamily"'
@faxm0dem
faxm0dem / setup.md
Last active October 18, 2015 15:22
Elasticsearch logs in JSON

Elasticsearch logs in JSON format

Build

cd /tmp
wget -O- http://wwwftp.ciril.fr/pub/apache/maven/maven-3/3.3.3/binaries/apache-maven-3.3.3-bin.tar.gz | tar xfz -
export PATH=/tmp/apache-maven-3.3.3/bin:$PATH
git clone https://github.com/logstash/log4j-jsonevent-layout
cd log4j-jsonevent-layout
mvn assembly:assembly
@faxm0dem
faxm0dem / keybase.md
Created September 24, 2015 20:46
keybase

Keybase proof

I hereby claim:

  • I am faxm0dem on github.
  • I am faxmodem (https://keybase.io/faxmodem) on keybase.
  • I have a public key whose fingerprint is FC13 3209 34C3 4562 35EE C0E4 9108 5E13 86FE E825

To claim this, I am signing this object:

@faxm0dem
faxm0dem / collectd-jmx.conf
Created August 5, 2015 12:18
collectd jmx example
<Plugin "java">
JVMARG "-Djava.class.path=/usr/share/collectd/java/collectd-api.jar:/usr/share/collectd/java/generic-jmx.jar"
LoadPlugin "org.collectd.java.GenericJMX"
<Plugin "GenericJMX">
<MBean "gc-count">
ObjectName "java.lang:type=GarbageCollector,*"
InstancePrefix "gc-"
InstanceFrom "name"
<Value>
Type "derive"
@faxm0dem
faxm0dem / doc_values_template.json
Created July 24, 2015 15:26
Elasticsearch set doc_values as default
{
"mappings" : {
"_default_" : {
"dynamic_templates" : [
{
"string_fields" : {
"match" : "*",
"match_mapping_type" : "string",
"mapping" : {
"index" : "not_analyzed",
@faxm0dem
faxm0dem / gist:e1befcc33123256e96d7
Created May 22, 2015 15:40
riemann reinject example
(let [
index (default {:state "ok" :ttl 60} (index))
indexer (default {:state "ok" :ttl 60}
index
(where (not (expired? event))
(changed-state {:init "ok"}
(tag "changed-state"
index))))
]
(streams