Skip to content

Instantly share code, notes, and snippets.

#!/bin/bash
declare -a stack
BOTTOM=0
CURRENT=0
echodigit(){
case $1 in
[0-9])
hex=$1
@artbikes
artbikes / terminal_clock
Created March 11, 2011 22:21
Terminal Clock
clock ()
{
while :; do
clear;
for i in {1..8};
do
echo "";
done;
date +%H:%M:%S | figlet -f lean -c -w120;
sleep 1;
@artbikes
artbikes / grok nginxaccess
Created February 15, 2012 18:20
nginx pattern for logstash
NGINXACCESS %{IPORHOST:clientip} %{USER:ident} %{USER:auth} \[%{HTTPDATE:timestamp}\] "%{WORD:verb} %{URIPATHPARAM:request} HTTP/%{NUMBER:httpversion}" %{NUMBER:response} (?:%{NUMBER:bytes}|-) (?:"(?:%{URI:referrer}|-)"|%{QS:referrer}) %{QS:agent} %{QS:xforwardedfor} %{IPORHOST:host} %{BASE10NUM:request_duration}
@artbikes
artbikes / log-core.sh
Created March 7, 2012 23:21
Java trace of running logstash instance
#!/bin/bash
#---
# take a dump of logstash process before restarting
#---
JSTACK=/usr/bin/jstack
JPS=/usr/bin/jps
APP=logstash
NOW=`date +%s`
OUTFILE=/var/log/logstash/$APP-trace-$NOW
@artbikes
artbikes / gist:2008347
Created March 9, 2012 19:59
slow awk?
[root@app audit]# time awk '/LOGIN/ {++c} END {print c}' audit.log
2582
real 0m0.069s
user 0m0.067s
sys 0m0.003s
[root@app audit]# time grep "LOGIN" audit.log | wc -l
2582
real 0m0.006s
@artbikes
artbikes / nginx-es.conf
Created March 21, 2012 21:27
nginx proxy for elasticsearch
worker_processes 1;
events {
worker_connections 1024;
}
http {
include mime.types;
default_type application/octet-stream;
@artbikes
artbikes / gist:2313040
Created April 5, 2012 18:23
auditd logstash pattern
AUDIT type=%{WORD:audit_type} msg=audit\(%{NUMBER:audit_epoch}:%{NUMBER:audit_counter}\): user pid=%{NUMBER:audit_pid} uid=%{NUMBER:audit_uid} auid=%{NUMBER:audit_audid} subj=%{WORD:audit_subject} msg=%{GREEDYDATA:audit_message}
AUDITLOGIN type=%{WORD:audit_type} msg=audit\(%{NUMBER:audit_epoch}:%{NUMBER:audit_counter}\): login pid=%{NUMBER:audit_pid} uid=%{NUMBER:audit_uid} old auid=%{NUMBER:old_auid} new auid=%{NUMBER:new_auid} old ses=%{NUMBER:old_ses} new ses=%{NUMBER:new_ses}
@artbikes
artbikes / logstash-redis-pattern
Created April 13, 2012 21:05
Logstash Redis Pattern
REDIS_TS %{MONTHDAY} %{MONTH} %{HOUR}:%{MINUTE}:%{SECOND}
REDIS \[%{POSINT:pid}\] %{REDIS_TS:timestamp} \* %{GREEDYDATA:message}
@artbikes
artbikes / jenk-graph.rb
Created July 23, 2012 18:10
Export Jenkins Data to Graphite
#!/usr/bin/env ruby
require 'rubygems'
require 'rest-client'
require 'json'
require 'optparse'
require 'ostruct'
require 'pp'
class ParseOpts
def self.parse(args)
@artbikes
artbikes / euler-1.rb
Created November 29, 2012 22:24
Euler #1
(1...1000).select {|x| x % 3 == 0 || x % 5 == 0}.inject(:+)