Skip to content

Instantly share code, notes, and snippets.

View daniel-garcia's full-sized avatar

Daniel García daniel-garcia

View GitHub Profile
@daniel-garcia
daniel-garcia / gist:1628009
Created January 17, 2012 18:31
Getting rrdcached statistics from zenoss in a zencommand datasource
#!/usr/bin/env python
import socket,os
try:
zenhome = os.environ['ZENHOME']
s = socket.socket(socket.AF_UNIX, socket.SOCK_STREAM)
s.connect(zenhome + "/var/rrdcached.sock")
s.send('STATS\n')
@daniel-garcia
daniel-garcia / create_honeyd.conf.py
Created March 8, 2012 23:07
Generate honeyd.conf for proxying localhost as monitoring target network
#!/usr/bin/env python
import random
#numnets = 253
#numhosts = 253
numnets = 128
numhosts = 253
@daniel-garcia
daniel-garcia / modeledDevicesCount.py
Created March 9, 2012 16:04
get modeled device count over time
#!/usr/bin/env python
import glob
import os
import cPickle as pickle
pattern = '/'.join((os.environ['ZENHOME'], 'var/zenmodeler_*',))
files = glob.glob(pattern)
@daniel-garcia
daniel-garcia / gist:2254364
Created March 30, 2012 19:39
generate fragmented table
DELIMITER $$
CREATE PROCEDURE `createfragTable`()
BEGIN
DECLARE ii INT DEFAULT 0;
DROP TABLE IF EXISTS fragme;
CREATE TABLE fragme (
@daniel-garcia
daniel-garcia / gist:2314599
Created April 5, 2012 22:16
Delete all devices with a zendmd script
#!/usr/bin/env zendmd
import sys
def usage():
print "usage: %s [DEVICE_ID] [DEVICE_ID]" % sys.argv[1]
if len(sys.argv) < 3:
usage()
sys.exit()
@daniel-garcia
daniel-garcia / log_snapshot.py
Created April 16, 2012 20:03
Take a snapshot of a log file every time a given pattern appears on a line
#!/usr/bin/env python
import time, os
import optparse
import fnmatch
import datetime
import subprocess
import logging
_LOG_FORMAT = "%(asctime)s %(levelname)s - %(message)s"
logging.basicConfig(level=logging.INFO, format=_LOG_FORMAT)
if evt.summary.startswith("Unhandled exception in zenhub"):
evt.severity = 3
@daniel-garcia
daniel-garcia / gist:2790549
Created May 25, 2012 21:06
Patch restorage to use INSERT ON DUPLICATE KEY UPDATE
--- relstorage/adapters/mover.py.orig 2012-05-25 16:56:17.000000000 -0400
+++ relstorage/adapters/mover.py 2012-05-25 16:57:16.000000000 -0400
@@ -864,11 +864,23 @@ class ObjectMover(object):
else:
if self.database_name == 'mysql':
stmt = """
- REPLACE INTO object_state (zoid, tid, state_size, state)
- SELECT zoid, %s, COALESCE(LENGTH(state), 0), state
- FROM temp_store
+ INSERT INTO object_state (zoid, tid, state_size, state)
#/bin/bash
LOG_FILE=sysbench_driver.log
rm -f $LOG_FILE
SYSBENCH=`which sysbench`
rc=$?
if [[ $rc != 0 ]]; then
echo "I could not find sysbench in the path."
exit $rc
#!/usr/bin/env zendmd
import uuid
import time
from MySQLdb import cursors
MAX_CHANGES = 10000
total_changes = 0
start_changes = time.time()
for d in dmd.Devices.getSubDevicesGen():