読者です 読者をやめる 読者になる 読者になる

すずけんメモ

技術メモです

複雑さに潜り込む - 大規模PHPアプリケーションにおける例外・モニタリング・ロギング

php

みなさん、PHP書いてますか?ここ2ヶ月くらいPHPも書いていたのでその話を書きます。 この記事はVOYAGE GROUP techlog / Advent Calendar 2016の記事です。 例えば以下のような話に身に覚えはありませんでしょうか。 例外がどこかで握りつぶされており、例外…

インタビュー記事が公開されました

先日Forkwellさんにインタビューしていただきました。リレーインタビュー形式になっており、膝くんからバトンを受け取りました。 Forkwell Press – スタートアップでのCTO経験で学んだ、エンジニアに必要な「経営的視点」-fluct... 学生時代の話からfluctで…

「みんなのGo言語」の執筆に参加しました

今回、「みんなのGo言語」の執筆に参加しました! みんなのGo言語【現場で使える実践テクニック】 : 松木雅幸, mattn, 藤原俊一郎, 中島大一, 牧 大輔, 鈴木健太 : 本 : Amazon Big Sky :: 「みんなのGo言語」の執筆に参加させて頂きました。 「みんなのGo言…

「サーバーレスの波はホンモノか?」あとがき

suzuken.hatenablog.jp ご来場くださった方々、どうもありがとうございました。パネル内で話せなかったことやあとがきをまとめてみました。 ツールの補足 さきほどのパネルディスカッションで紹介したCloudWatch logsを見るツールは https://t.co/1ZmrgWfbYJ…

AWS Summit Tokyo Developer Conferenceのパネルディスカッションに登壇します

aws

来週のAWS Summit TokyoのDevconにて、以下のパネルディスカッションに登壇予定です。6/2の16:20 - 17:00の回です。 AWS Summit Tokyo 2016 Developers Conference(DevCon) 【パネルディスカッション】サーバーレスの波はホンモノか? 最前線の開発者に聞…

Shibuya.go#2 を開催しました

昨日 Shibuya.go#2 を開催しました!参加していただいたみなさま、どうもありがとうございました。 shibuyago.connpass.com そして発表者のみなさま、発表どうもありがとうございました。リンクを貼っておきます。 テクニカルトーク #shibuyago https://t.co…

Shibuya.go#2を開催します!

Shibuya.goの2回目を開催します! Shibuya.go#2 - connpass 前回 Shibuya.go#1を開催しました。 - すずけんメモ に引き続き、弊社オフィスにて開催します!前回も盛りだくさんで、懇親会もだいぶ色々な話ができて楽しかったので今回もまた色々なお話ができれ…

Shibuya.go#1を開催しました。

今週の火曜日に Shibuya.go#1 - connpassを開催しました。ご来場していただいた皆様、発表者の皆様、どうもありがとうございました。 渋谷近辺、都内近郊でGoを書いている人ともっと会いたいなぁと思い、今回開催するにいたりました。私は普段から仕事でも仕…

Travis CIを利用した継続的な成果物の配置

こんにちは。 @suzu_v です。 Advent Calendar 2015 18日目 休載のお知らせ - VOYAGE GROUP techlog とのことだったので代打で書いてみます。*1 いま私が所属している fluct ではCIの一部にTravis CIを利用しています。用途としては、 継続的なテスト 継続的…

#ajiting Advent Calendar 1日目

#ajiting Advent Calendar 2015 - Adventar 1日目 明日は @brtriver です。

aws-cliのs3api put-objectでContent-MD5ヘッダをつける

put-object — AWS CLI 1.9.2 Command Reference をみると --content-md5 オプションがある。 PUT Object - Amazon Simple Storage Service にあるとおり、 To ensure that data is not corrupted traversing the network, use the Content-MD5 header. When …

vim-go-extraからvim-go に移った

ずっと vim-jp/vim-go-extra をつかっていたのだけど、oracleとかvetとかもろもろ扱いやすくしたいなと考えていたらもう fatih/vim-go でいいか、と考えてvim-goに移った。 前から dgryski/vim-godef を重宝していて、Godocをみるよりもソースに飛んでドキュ…

re:Invent 2015のスライドをみたメモ その2

re:Invent 2015のスライドをみたメモ - すずけんメモ のつづき。 (BDT320) New! Streaming Data Flows with Amazon Kinesis Firehose KinesisのGMとPMの方の発表 Kinesis Streamの最近のupdate 500 records / 5MB payloadまでのPutRecords API 1レコードの最…

re:Invent 2015のスライドをみたメモ

今年はre:Inventには参加せずオフィスで仕事しようと考えていたのですが、実は先週急遽入院していました。*1ちょうどre:Inventのスライドとビデオが公開されていたので、昨日今日とメモしたものをここに貼っておきます。 スライドしかみてないので、デモ中心…

ATSに対応できているかチェックするツールats_checkerを書いた

追記: El CapitanにATS用のチェックツールが nscurl に付属したのでそちらをつかうことをおすすめします。 App Transport Security Technote: App Transport Security Technote https://developer.apple.com/library/watchos/technotes/App-Transport-Securi…

任意のコマンドを適当にリトライするツール、retryを書いた。

外部サービス叩いたりしてるとよく手元でretryすることになったりする。shellで書いても良いのだけど、Goで書いてみた。 suzuken/retry https://github.com/suzuken/retry -> % retry Usage: retry <command> -initialInterval int retry interval(s) (default 1) -ma</command>…

Go 1.5でgo docがちょっと便利になった

$ go doc fmt.Sprintf func Sprintf(format string, a ...interface{}) string Sprintf formats according to a format specifier and returns the resulting string. 見やすくなりましたね。

iTerm2でビープ音を消す

iTermのバージョン: Build 2.1.1 Preferences -> Profiles -> Terminalの中のNotification -> Silence bellをonに。

YAPC::Asia Tokyo 2015 前夜祭に行ってきた

YAPC::Asia Tokyo 2015 の前夜祭に行ってきました。仕事終わりに埼京線からりんかい線に乗り継ぎ、国際展示場へ。ビッグサイトはちょっと時間がかかるかなと思っていましたが、空いていたので渋谷から30分ほどで着きました。 聴いたトークは3つ。メモがてら…

JAWS-UG Meguro #0 でAWS SDK for Goについて発表してきました

「カジュアルなAWSの集いをやりますよ!」というお誘いをいただいて、行ってきました。 JAWS-UG Meguro #0 (2015/05/22 19:00〜)connpass.com 私からは最近触り始めたAWS SDK for Goの紹介をしました。 AWS SDK for Go in #jawsmeguro from Kenta Suzuki www…

Arduinoをはじめよう、をやってみた

GWだし普段やってないことをやってみよう、ということでArduinoを触ってみた。Arduinoをはじめようという本と、それに合わさったキットをつかっている。*1 Arduinoをひとまず起動する LEDをつけてみる スイッチをon/offしてLEDをつけたり消したりしてみる Cd…

dummyデータをつくる

dummyデータつくるのになんかスクリプト書くかーといっていっつも使いまわしている気がしてきたのでとりあえず簡単なライブラリにしておいた。 suzuken/dummygithub.com 似たようなツールはいろいろあるけど、シンプルなのが欲しかった。もうちょっとまとま…

ローカル作業でのgitリポジトリ管理とコーディング環境の話

git

gitを改めてちゃんと使おうという人がまわりで増えてきたのでメモとして貼っておく。 現状の設定はこんな感じ。1年くらい変わってなかった。 https://github.com/suzuken/dotfiles/blob/cbf8e7168c96029d535d69f981337d23aacfa51c/gitconfig 特にaliasまわり…

React.jsをもくもくと触り始めた

とりあえず触ってみないとわからないのでもくもくとチュートリアルをなぞっていく。 A JavaScript library for building user interfaces | React https://facebook.github.io/react/ Starter Kit 0.13.1でさわる wget https://facebook.github.io/react/dow…

新社会人エンジニアに向けて

新卒一年目の時にやっておけばよかったこと、というネタ振りで社内日報に書いた。こっちにも貼っておく。 毎日コードを書こう。業務では様々な事情で打合せが増えたりして悶々とすることもある。良いコードを書けない人はコードを書いてる絶対量が少ない。コ…

複数hostについてlistenしているnet.httpサーバを立ち上げ、そして落とす

先ほどのメモに引き続き HTTP Serverの止め方 - すずけんメモsuzuken.hatenablog.jp 今度はこれを複数hostについてlistenしたい。これもテスト用に使いたかったもの。で、下のように書いてみた。 gist.github.com 10秒間は複数hostについてlistenさせている…

HTTP Serverの止め方

結合テストの際にHTTP Serverを立ち上げて、テストが終わったらListenをやめる、というのをやりたかったので調べた。下のようにしてStopさせてみた。 gist.github.com hydrogen18/stoppableListener · GitHub では StoppableListenerを実装していて、net.TCP…

age++

年齢が平成に追い付きました。 例年のやりとりです。 私も年齢が平成に追いつきました— suzuken (@suzu_v) 2015, 3月 26 http://www.amazon.co.jp/registry/wishlist/30VYSQHWD1K65

JAWS DAYS 2015で発表してきました

JAWS DAYS 2015でData Engineering at VOYAGE GROUPという題で発表してきました。運営の皆様、聴きに来てくださった皆様、どうもありがとうございました。 Data Engineering at VOYAGE GROUP #jawsdays from Kenta Suzuki 内容としては行動ターゲティング基…

JAWS DAYS 2015で発表します

JAWS DAYS 2015で弊社でのデータエンジニアリングについて発表します。3/22の11:10から発表予定です。 http://jawsdays2015.jaws-ug.jp/speaker/suzuki/

Windowsで外付けHDDに書いてもらったファイルをMacで読み込む必要があったので調べた

brew install ntfs-3g sudo mv /sbin/mount_ntfs /sbin/mount_ntfs.orig sudo ln -s /usr/local/Cellar/ntfs-3g/2014.2.15/sbin/mount_ntfs /sbin/mount_ntfs brew install osxfuse sudo /bin/cp -RfX /usr/local/opt/osxfuse/Library/Filesystems/osxfusefs…

年報 #vgadvent2014

気がつけばもうアドベントカレンダーの季節。今年も振り返りをしてみようと思う。 この記事はVOYAGE GROUP エンジニアブログ: Advent Calendar 2014の12/18分の記事です。 http://tech.voyagegroup.com/archives/7941760.html 去年も書いた振り返り記事: htt…

AWS re:Invent 2014 breakout session 2日目

二日目もKeynoteとsessionがありました。メモを残しておきます。 参加したセッション SPOT305 -- Event-Driven Computing on Change Logs in AWS BDT401 -- Big Data Orchestra - Harmony within Data Analysis Tools APP303 -- Lightning Fast Deploys with…

AWS re:Invent breakout session 1日目

re:Invent 2014 breakout session 1日目 個人的にメモっておきます。 Keynoteでは、AuroraがでたりConfigだったりCodeDeployだったりがでました。細かい機能の話は参照しておいて、所感中心で。 聴いたセッションは以下のとおり。 SDD406 -- Amazon EC2 Inst…

今年もAWS re:Inventに行ってきます&興味のあるセッション一覧メモ

aws

追記 2014/11/14: スライドがupされていたのでみつけたものを追加。出れてないセッションを中心に確認したい。 今年もAWS re:Inventに参加して来ます。去年いってみて、興味あるセッションを見きれなかったり、新サービスのセッションが急遽追加されたりして…

サービス改善とログデータ解析について発表してきました

『サーバ/インフラエンジニア養成読本 ログ収集〜可視化編』の出版記念イベントで発表してきました。会場を提供していただいたGMOのみなさま、主催のTreasure Data / 技術評論社のみなさま、そして聴きに来てくださった方々、どうもありがとうございました。…

Fluentd UIが出たので触ってみた

fluent/fluentd-ui https://github.com/fluent/fluentd-ui Fluentd用のWeb UIが出たようです。試しに触ってみます。 インストール READMEのとおりですが、 $ gem install fluentd-ui $ fluentd-ui start Open http://localhost:9292/ by your browser defaul…

supervisorのcommandで$()を使いたいとき

今日初めてsupervisorの設定をした。まだあまり使い勝手がわかっていない。 supervisorでは環境変数の展開以外、マクロ的なことができない。bash -lcを使う。例えば以下のようにする。 [program:hoge] command=bash -lc '$(which hoge)/bin/fuga start'

splitしたwindowをもとのサイズに戻す

vim

外付けディスプレイにTerminalを持っていったとかでサイズが変わった場合、splitしたvimのwindowのサイズも変わってしまうことが多々ある。そういった場合に、また均等に各windowのサイズを戻したい、という場合。 How to refresh vim layout when split - S…

paneのresizeを見なおした

こんな感じでpaneのresizeをするようにした。 # resize pane bind -r C-h resize-pane -L 5 bind -r C-j resize-pane -D 5 bind -r C-k resize-pane -U 5 bind -r C-l resize-pane -R 5 https://github.com/suzuken/dotfiles/blob/master/tmux.conf#L135-L13…

サーバ/インフラエンジニア養成読本 ログ収集~可視化編 を書きました

技評さんでログ解析のムック本を共著で執筆させていただきました。 サーバ/インフラエンジニア養成読本 ログ収集~可視化編 [現場主導のデータ分析環境を構築!] (Software Design plus)作者: 鈴木健太,吉田健太郎,大谷純,道井俊介出版社/メーカー: 技術評論社…

EMRでHiveServer2を立ち上げてみた

背景 YARNのリソース設定周りが少しずつわかってきたので、ひとまずクライアントからはどんどんジョブを放り投げておく方針にしたい HiveServerで運用していたのだが、その過程でthriftの並列性がもっと欲しくなった HiveServer2をそろそろちゃんと使おうと…

O'Reilly Hadoop 第3版を買った

O'Reilly Japan - Hadoop 第3版 http://www.oreilly.co.jp/books/9784873116297/ 第2版は持っていて、研究室にいた頃に読んでいた。第3版は買っていなかったので、ebookで買った。 所感 MRv2及びYARN周りの記述が追加されている YARNでの障害対応、モニタリ…

近況

最近コードを書く時間が減っている。就業時間外にコーディングする時間の方が長い。 何をつくるかを考える時間は増えている。 ここ半年くらいインフラよりなんだけどOpsっぽいこともしている 社内での微妙な調整とか、申請とか、そういうのが相まって結果的…

#可視化 ツール現状確認会を開催しました

可視化ツールのことがよくわからなかったので、現状確認会を開催しました。 可視化ツール現状確認会 on Zusaar http://www.zusaar.com/event/7437003 LTのスライド&ブログまとめ あがっているものから随時更新します。 可視化ツール紹介 (showyouさん) Cl…

複数のインデックスをまとめて消す方法

Delete Index http://www.elasticsearch.org/guide/en/elasticsearch/reference/current/indices-delete-index.html にも書いてあるけど、*が使える。単一のインデックスを消す場合には以下のようにする。 $ curl -XDELETE 'http://localhost:9200/twitter/'…

Viewfinderのコードが公開されていた

viewfinderco/viewfinder https://github.com/viewfinderco/viewfinder Viewfinder: フォトシェアリングアプリのソース25万行を公開 - ワザノバ | wazanova http://wazanova.jp/items/1310 ワザノバを読んでいて知ったんだけど、Viewfinderのコードが公開さ…

Elastic Beanstalkを使うときのIAM policy設定

最近ちょっとした検証環境とか、小さいアプリをデプロイするのにElastic Beanstalk*1をつかってる。サーバセットアップの手間も省けるし、HTTPで叩ける小さなAPIとかだと手軽にデプロイできるので便利。 AWS Elastic Beanstalk(アプリケーションのデプロイ…

AWS Casual Talks #2 で発表してきました #awscasual

aws

AWS Casual Talks#2で発表してきました。主催の @con_mame さん、会場を提供してくださったAWSのみなさま、どうもありがとうございました。 AWS Casual Talks#2 on Zusaar http://www.zusaar.com/event/3817003 今回は新サービスネタということで僕の発表で…

Elasticsearchのクラスタにノードを追加するときにやっていること

Elasticsearchのクラスタにノードを追加するのは簡単にできる。しかし、インデックスを盛々積んだクラスタにノードをカジュアルに追加すると、一気にシャードのアロケーションが走って負荷があがる。また、何の設定もせずに追加するとsplit brainを起こしや…