Skip to content

Instantly share code, notes, and snippets.

@toritori0318
toritori0318 / test_util.py
Created April 2, 2013 09:07
sqlalchemyのdrop/create
# encoding:utf-8
from sqlalchemy import create_engine, Column, Integer, String, DateTime, Text, ForeignKey
from sqlalchemy.orm import scoped_session, sessionmaker, relationship, backref
from sqlalchemy.ext.declarative import declarative_base
from config import DSN
# setup sqlalchemy
engine = create_engine(DSN, encoding='utf-8')
db_session = scoped_session(sessionmaker(autocommit=False,
@toritori0318
toritori0318 / out_exec_filter.pl
Created January 26, 2013 17:32
fluentdでsocket.ioのトランスポート集計
use strict;
use warnings;
use Data::Dumper;
use JSON::XS;
use Data::MessagePack;
$| = 1;
my $mp = Data::MessagePack->new();
while ( my $json = <STDIN> ) {
@toritori0318
toritori0318 / gf_delete_graph.pl
Created December 13, 2012 06:42
growthforecastのグラフを削除するCLI
use strict;
use Web::Scraper;
use URI;
use LWP::UserAgent;
use YAML::Tiny;
use Data::Dumper;
use Getopt::Long;
my @graph_list;
@toritori0318
toritori0318 / parse_nginx_log.pl
Created November 10, 2012 17:05
nginxのログファイルを時間指定して抽出
#!/usr/bin/env perl
use strict;
use warnings;
use Data::Dumper;
use Time::Piece;
my $file = shift;
my $ftime = shift;
my $ttime = shift;
@toritori0318
toritori0318 / pb_redis.pl
Created October 17, 2012 07:11
Redisベンチマーク(Parallel::Benchmark / MBA版)
use strict;
use warnings;
use Data::Dumper;
use Parallel::Benchmark;
use RedisDB;
my $bm = Parallel::Benchmark->new(
setup => sub {
my $self = shift;
$self->stash->{redis} = RedisDB->new(host => 'localhost', port => 6379);
@toritori0318
toritori0318 / appendonly_yes
Created September 27, 2012 18:11
Redisベンチマーク:コンフィグの値別:m1.large
# appendonly yes
$ ./redis-load clients 100 requests 10000000 datasize 32 keyspace 10000000 set 100
PRNG seed is: 2542776283 - use the 'seed' option to reproduce the same sequence
====== Report ======
10000000 requests in 274.428 seconds
36439.43 requests per second
100 parallel clients
payload: 32..32 bytes
keep alive: 1
@toritori0318
toritori0318 / app.js
Created August 9, 2012 09:08
Redisの検証用 expressアプリケーション
/**
* Module dependencies.
*/
var express = require('express')
, routes = require('./routes');
var redis = require('redis');
var app = module.exports = express.createServer();
@toritori0318
toritori0318 / td-agent.conf
Created July 30, 2012 09:20
fluentd+growthforecastのグラフ化時、自動でHOSTNAMEつけるパターン
# http://d.hatena.ne.jp/toritori0318/20120723/1343059303
<source>
type tail
format /^(?<date>[^\t]+)\t(?<cpu-usr>[^\t]+)\t(?<cpu-sys>[^\t]+)\t(?<cpu-idl>[^\t]+)\t(?<cpu-wai>[^\t]+)\t(?<cpu-hiq>[^\t]+)\t(?<cpu-siq>[^\t]+)\t(?<la-1m>[^\t]+)\t(?<la-5m>[^\t]+)\t(?<la-15m>[^\t]+)\t(?<mem-used>[^\t]+)\t(?<mem-buff>[^\t]+)\t(?<mem-cach>[^\t]+)\t(?<mem-free>[^\t]+)\t(?<dsk-read>[^\t]+)\t(?<dsk-writ>[^\t]+)\t(?<io-read>[^\t]+)\t(?<io-writ>[^\t]+)\t(?<net-recv>[^\t]+)\t(?<net-send>[^\t]+)/
path /tmp/dstat.log
tag dstat.Tclmdrn
</source>
<match dstat.Tclmdrn>
@toritori0318
toritori0318 / Amon2-Config-Simple-Ex.pm
Created July 27, 2012 03:56
Amon2のConfigロード時にdefault.pl読めるようにしてみた
package Amon2::Config::Simple::Ex;
use strict;
use warnings;
use File::Spec;
use Carp ();
sub load {
my ($class, $c) = (shift, shift);
my %conf = @_ == 1 ? %{$_[0]} : @_;
@toritori0318
toritori0318 / config.yaml
Created July 21, 2012 19:28
growthforecastの複合グラフ作るスクリプト
---
host: localhost:5125
# 指定するとフィルタがかかる
#service_name: hogehoge
#section_name: fugafuga
# グラフデータのデフォルト値
#graph_data:
# sumup: 1 # 合計値を表示するかどうか?