Skip to content

Instantly share code, notes, and snippets.

View Kami's full-sized avatar
:octocat:
🐕‍🦺 🦮 🇸🇮 🇺🇦 🇹🇼

Tomaz Muraus Kami

:octocat:
🐕‍🦺 🦮 🇸🇮 🇺🇦 🇹🇼
View GitHub Profile
@Kami
Kami / gist:2773722
Created May 23, 2012 07:34
cassandra log on sstableloader
TRACE 22:35:55,795 /127.0.0.1local generation 1337553325, remote generation 1337553325
TRACE 22:35:55,795 Updating heartbeat state version to 31 from 29 for /127.0.0.1 ...
DEBUG 22:35:55,795 Schema on /127.0.0.1 is old. Sending updates since 00000000-0000-1000-0000-000000000000
DEBUG 22:35:55,795 collectAllData
DEBUG 22:35:55,798 collecting 0 of 100: ed95e4f0-a2cb-11e1-0000-7fd66bb03adb:false:6861@1337553254704
DEBUG 22:35:55,799 collecting 1 of 100: edb1aa50-a2cb-11e1-0000-7fd66bb03adb:false:7501@1337553254774
DEBUG 22:35:55,802 collecting 2 of 100: edb92460-a2cb-11e1-0000-7fd66bb03adb:false:7882@1337553254824
DEBUG 22:35:55,802 collecting 3 of 100: edc13ab0-a2cb-11e1-0000-7fd66bb03adb:false:8232@1337553254876
DEBUG 22:35:55,802 collecting 4 of 100: edc97810-a2cb-11e1-0000-7fd66bb03adb:false:8581@1337553254932
DEBUG 22:35:55,802 collecting 5 of 100: edd007c0-a2cb-11e1-0000-7fd66bb03adb:false:8939@1337553254974
@Kami
Kami / gist:2763687
Created May 21, 2012 18:12
cassandra restore
1. List all the buckets.
2. Find latest manifest in each bucket (sort files by name DESC, get the first one)
3. Open manifest, read the names of the files to download
4. Download the files in like /tmp/<node-name>/<keyspace name>
5. Start restoring sstables for one node at a time sstableloader --debug /tmp/<node-name>/<keyspace name> // todo - sstable loader reads config in ../conf/cassandra.yaml - this has been changed in 1.1 and you can directly pass in a list of initial nodes
import os.path
from os.path import join as pjoin
from gevent import monkey
from gevent.pool import Pool
monkey.patch_all()
from libcloud.storage.providers import get_driver
from libcloud.storage.types import Provider
<?xml version="1.0"?>
<entry xmlns="http://www.w3.org/2005/Atom">
<TenantId>12345</TenantId>
<ServiceName>MaaS</ServiceName>
<ResourceID>enAAAA</ResourceID>
<UsageID>550e8400-e29b-41d4-a716-446655440000</UsageID>
<EventType>create</EventType>
<category term="monitoring.entity.create"/>
<DataCenter>global</DataCenter>
<Region>global</Region>
var et = require('elementtree');
var XML = et.XML;
var ElementTree = et.ElementTree;
var element = et.Element;
var subElement = et.SubElement;
var date, root, tenantId, serviceName, eventType, usageId, dataCenter, region,
checks, resourceId, category, startTime, resourceName, etree, xml;
var fs = require('fs');
var et = require('elementtree');
var XML = et.XML;
var ElementTree = et.ElementTree;
var element = et.Element;
var subElement = et.SubElement;
<?xml version="1.0"?>
<entries>
<entry>
<TenantId>12345</TenantId>
<ServiceName>MaaS</ServiceName>
<ResourceID>enAAAA</ResourceID>
<UsageID>550e8400-e29b-41d4-a716-446655440000</UsageID>
<EventType>create</EventType>
<category term="monitoring.entity.create"/>
<DataCenter>global</DataCenter>
@Kami
Kami / covert.py
Created September 24, 2011 19:06
#!/usr/bin/env python
# Convert 1Password .csv file to the KeePassX xml format
# Note: Ignores categories
import sys
import csv
import unicodedata
import lxml.etree as ET
# Maps fields names from 1Password to KeepPassX
_$ponnies["2.js"][1]++;
var fs = require("fs");
_$ponnies["2.js"][3]++;
var sprintf = require("sprintf").sprintf;
_$ponnies["2.js"][4]++;
var terminal = require("terminal");
_$ponnies["2.js"][5]++;
var findit = require("findit");
_$ponnies["2.js"][6]++;
var burrito = require("burrito");
@Kami
Kami / gist:1175794
Created August 27, 2011 19:53
NodeJS unused variables report
var fs = require('fs');
var findit = require('findit');
var burrito = require('burrito');
var finder = findit.find('./lib');
var vars = {};
function processFile(filePath) {