2015-02-01から1ヶ月間の記事一覧

knife solo bootstrapで対象ホストのIPとnodesファイルを指定する

knife-soloは予め~/.ssh/configのホスト名とnodes/(ホスト名).jsonでネーミングルール合わせておけば $ knife solo bootstrap (ホスト名)でよしなにやってくれるので大変便利なのだけど、AWSでEC2のインスタンスをポコポコ上げてIP変わると~/.ssh/configいじ…

ひだまりスケッチ8

ひだまりスケッチ (8) (まんがタイムKRコミックス)作者: 蒼樹うめ出版社/メーカー: 芳文社発売日: 2015/02/27メディア: コミックこの商品を含むブログ (20件) を見るひだまりスケッチの新刊が久々に出てた。ヒロと紗英が卒業して新1年生の茉里が入ってきて、…

JSONのテンプレからEC2のインスタンス起動する

AWS

EC2のインスタンスをCLIから起動するのに、aws ec2 run-instances コマンドがあるのだけど、指定しないといけないオプションがやたら多くて、毎回指定するのダルいなーと思ったら、--cli-input-jsonオプションでJSONテンプレート渡せるようなので、やってみ…

Serverspecのテストケースをロール単位で管理する

serverspec-initでできるデフォルトのRakefileだとホスト名ごとにディレクトリ掘ってその中にテストケースのspecファイルを入れていくのだけど、サーバ複数あるとspecファイルコピペしないといけないのイマイチなので、Chefのロール単位ぐらいで管理できると…

Serverspecでrubyのバージョン確認する

出来たサーバに監視周りとかいろいろ周辺のパッケージとか入れて遊んでいこうかなぁと思ったけど、その前にせっかくChefでパッケージのインストールとかも自動化したのだから、流れ的にテストも自動化したいよねぇとか思ってServerspec使い始めた。試しにま…

GAのスクリプトを埋めてアクセス数とかリファラとか調べる

Web

手っ取り早くサイトのアクセス数と流入元のリファラをチェックするのに、Google アナリティクスのスクリプトを埋めるのが簡単。以下のページからアカウント登録して、 Google Marketing Platform - Unified Advertising and Analyticsこんなかんじのscriptタ…

Capybaraでテスト中のHTMLをダンプしてデバッグする

カピバラさんでテストが通らないんですけど、テスト中のナマのHTML見たいんだけどどうなってんのという時の技。準備としてpry-byebugというgemを使うのでGemfileに書いてbundle installとかして下さい。 gem 'pry-byebug' あとはデバッグで止めたい場所にこ…

並列並行本の読書会#5

毎月やってるHaskellの並列並行本の読書会行った。 partake.in 今回は9.6 非同期例外の捕捉のところから10章のSTM(ソフトウェアトランザクショナルメモリ)の話まで。STMはトランザクション中の更新は共有のメモリにすぐ反映しないので、トランザクションの…

GitHubコミットメッセージの英語の書き方の文例が検索できるサービス作った

経緯 個人的にgit commit -m " うっ、英語でなんて書けばよいんだろう。。。。ってなることが多くて、GitHubの公式の検索ってソースコードは検索できても、コミットメッセージをリポジトリ横断的に検索したいなんてことはできないんですよねぇ。まぁネイティ…

LPICレベル2認定とった

残り最後の1つLPIC202受けてきて受かったので、レベル2認定とった。めでたい。LPIC202はスコアは710で合格点は余裕でクリアしたけど、範囲広い上に設定ファイル内の項目名とか覚えるのかなり辛みあった。レベル3はかなり特殊でマニアックそうなので今のとこ…

vagrant上でbundle exec遅いの/vagrantにgem入れてたからだった罠

vagrant上で開発するのに/vagrant共有してそこをプロジェクトのルートにして手元のエディタでコード書いたりしてて、その流れでbundle install --path vendor/bundleとかして/vagrant上にgemもインストールしちゃってたのだけど、なんとなくvagrant上でbundle…

vagrantからterminal-notifierに通知飛ばす。

前回guardでいい感じに自動テスト環境セットアップしたけど、あれ?terminal-notifierもvagrantから通知できなくね?ということで、またしてもググってみたところ、おぉ神よ。 vagrant-notify+terminal-notifierでvagrantからローカルに通知をする - Qiitate…

vagrant上でguardのファイル検知する

Railsでvagrant上にrspec+guard+sporkな環境作ってたのだけど、guardの検知ってvagrant側からできなくね?っと思って調べたメモ。 rspec+guard+sporkの組み合わせは基本的にRailsチュートリアルと同じ構成だけど、現時点での最新版使ってるので設定方法に若…

Railsでform_tagをpostからgetにするとURLにutf8のパラメータが付くあれ消したい

検索フォームpostよりgetの方がURLがわかりやすくなってよいなぁとか思ってgetにしたらURLにutf8=✓とかbutton=とか勝手にパラメータついてなんなんこれってかんじ。 結論から言うと同じことしてた人がいるみたいでこの方法で消せた。 Ruby on Rails - submit…

休息

ONとOFFの境界が希薄になってきている今日このごろ。久々に近所の温泉というかスーパー銭湯的なところ行ってきた。最近全然行ってなかったのでポイントの有効期限が切れてた。ここ行くと必ずサウナと水風呂を往復するのが趣味。あと行く度にカレカノをちょっ…

ソーシャル連携ボタンを設置する

Web

以下のサイトで適当に値を入力して生成されたタグを貼り付ければよいんじゃないですかね。(説明雑) twitter: https://about.twitter.com/ja/resources/buttons はてぶ: http://b.hatena.ne.jp/guide/bbutton GitHub(非公式): http://ghbtns.com/

Route53とS3でメンテナンス中のソーリー画面作る

AWS

EC2インスタンス1台の弱小構成だとソーリー画面ぐらい作っておきたい派。EC2インスタンス2台にすると高いし。調べたところELBから直接S3のスタティックホストに振れないようなので、前段のRoute53でDNSフェールオーバさせてS3のスタティックホストを返すとい…

CloudWatchとSNSでELBのヘルスチェックが落ちたらメール通知する

AWS

とりあえずサービスが生きてるか死んでるか死活監視のメールぐらい飛ばしたいよねと思い、CloudWatch調べてみた。ちなみにそもそも監視がAWSが生きてることを前提にしてはいけない場合にはAWS外からpingdomとか外形監視のサービスを利用を検討すればよいんじ…

経験あるものだけだと偏っちゃうよねという話

昨日の作業メモ整理して長文書いたり、あとはLPIC202の試験勉強したりしてた。202はいろんなサーバプロセスの設定ファイルの書き方とかまた細かいところを攻めてくるのだけど、網羅的に全部のサーバプロセス知ってるかというと例えばBINDサーバは立てたこと…

環境構築メモ(VPC/EC2/RDS/ELB/Route53)

AWS

AWSの勉強がてらAWS上にRailsで作ったサービスの環境構築したメモ。AWS初心者なのでGUIでポチポチやってるけど楽しい。ただGUIなのでメモが取りにくくて困る。まぁ最終的な設定値は画面で見れるので困りはしないのだけど。慣れてくると何度もやる操作はCLIに…

AWS環境構築中

GUIでポチポチ弄ってるけど楽しい。あとで環境構築メモ書く。

LPIC201受かった

LPIC201受けてきて受かった。スコアは770でかなりよかった。カーネルとかハードウェア周りは普段あんまり触らなくて苦手なので大丈夫かしらと思ったけど、あんまりマニアックなところまで踏み込んだ問題じゃなかったのでなんとかなった。このペースなら2月中…

ローカルでそれっぽい感じになってきた

ローカルで最小限の機能実装できたのでデータ突っ込んで試しに使ってみたのだけど、長い文章ばっかり検索に引っかかる傾向があって、んーちょっと欲しいのと違うなというかんじ。だいたいこれ使いたい人(つまり俺)はメッセージ1行しか書かないから例文も1…

MySQL InnoDB FTSで簡単に全文検索の性能測ってみた

前回MySQL InnoDB FTSで機能的に全文検索できるところまでやったけど、大量にデータ投入して簡単に性能測ってみた。 マシンはMacBook Pro (Retina, 13-inch, Late 2013/CPU: 2.4 GHz Intel Core i5/メモリ:8 GB 1600 MHz DDR3)上で動くVirtualBoxの仮想マシ…

Railsで4バイトUnicode絵文字を扱えるようにする

大量のテキストをDBに突っ込んでたら4バイト絵文字を混ぜてくるの試されてるとしか思えない。 ActiveRecord::StatementInvalid: Mysql2::Error: Incorrect string value: '\xF0\x9F\x92\x85 f...' for column 'message' at row 1えーっと、このコードはどう…

続csvで残りを全部最後の列に入れる

以前こんなの書きましたが、、、 csvで残りを全部最後の列に入れる - 城陽人の本棚 split関数にlimit引数渡したら要素数調整できるやん。ちゃんとリファレンス見ようぜ。 open('test.csv') do |file| file.each do |line| a, b, c = line.split(', ',3) Hoge…

Rails+MySQL InnoDB FTSで全文検索する

全文検索する方法として、データが少量であればただのLIKE検索で、大規模になるとSolrとかElasticsearchとか専用の全文検索エンジン使うというかんじになるかと思うのだけど、ビックデータというほどでもないけどLIKE検索だとちょっと遅いという場合に、MySQ…

RailsのデータベースをSQLiteからMySQLに変更する

RailsのデフォルトのデータベースはSQLiteですが、後からMySQLに変更するためのメモ。 Railsは4.2.0で、MySQLは5.6です。 MySQLのインストール まずMySQLインストールして下さい。インストール方法は各自環境に合わせてググってください。(投げやり) MySQL…

berkshelfでmysqlをインストールする

berkshelfでmysqlをインストールするのに若干いろいろハマったのでメモです。 環境はvagrant上のCentOS6.5です。mysqlは5.6を入れます。前回vagrantで環境作ってた時はchefのprovisionまでVagrantfileに書いてたのですが、この方法だと一部のクックブックを…

Rails+ransackで検索機能作る

Railsで簡単に検索機能つけるのに、ransackというgemがあるようなので使ってみた。 Railsは4.2.0、ransackは1.6.3を使いました。まず、Gemfileに追加。 gem "ransack", '~> 1.6.3' bundleでインストールする。 $ bundle install --path vendor/bundle直接的…