Akata Works

東京エンジニア。主にRuby,Go,たまにAWSとiOS。ゲーム音楽が好きです。連絡はTwitterかakata.onen@gmail.comまで

2018-01-01から1年間の記事一覧

collectdとstatsd-graphite-grafanaのDockerイメージで監視体制を作る

Lightsailがかなりお得になったので、何か作ろうかなと思っているんですが、どんなサーバを可動させようにも「まずは監視だな」ということでこんな記事を書いてみました。 サーバーはamazon-linux-2018.03.0を想定しています。 今回はメトリクスの収集はアプ…

RubyのCSI多言語化について調べたらpack, unpackについて理解できた話

Rubyでバイト列の先頭にマジックナンバーが付いたようなものを扱う機会があったのでArray#pack, String#unpackについて調べてみました。 このあたりの認識がふわっとしてると、使うときに障害の種になるので要注意ですね。 結構調べたつもりですが、間違えて…

NodeJSとnodejsコマンド・nodeコマンドの違い

前々からちょこちょこ気になってたことだったので調べてみた。 RubyイメージのDockerコンテナ内とかUbuntuでNodeJSを使おうと思って調べると、すぐにapt-get install nodejsに辿り着くんですが、このコマンドでインストールされたバイナリはnodeじゃなくてno…

DockerHubにあるイメージのタグリストを出力するスクリプト

DockerHubにあるイメージのタグを検索するだけのスクリプト。docker searchだとそこまで分からないから便利。 curl -s -S "https://registry.hub.docker.com/v1/repositories/#{image_name}/tags" | jq '.[]["name"]' jqコマンドに依存するので、便利だから…

スクリプトからgsutilを使用するときの認証などのポイント

はじめに RubyからGoogle Cloud StorageのAPIを叩くにはgoogle-cloud-storage gemを使うのが一般的なので、この記事はどうしてもスクリプトからgsutilを実行したい人向けです。 今回はGoogle Cloud SDKの一部としてgsutilをインストールした前提で書いていま…

Railsでオンメモリにキャッシュするとハマるので注意

Railsのフラグメントキャッシュでオンメモリを指定してたら、外部ミドルウェアを使うのと挙動が違ってハマったのでメモ。 開発環境デフォルトのオンメモリは準備が楽ですが、本番でDalliとか使ってると混乱するので統一しておきたいですね。 検証 恐らく最も…

Deployment TargetとBase SDKと互換性について

Deployment TargetとBase SDKはSDKの上下互換性を保つための重要な設定項目です。前者はSDKの最低動作バージョンを、後者は開発のベースとなるSDKバージョンを示し、これらの間に含まれるバージョンはOSごとに順応させる必要があります。

Twitter OAuthが403 Forbiddenを返すようになったので対応した

Callback URLsに設定済みのcallback_urlパラメータ以外はエラー返すようになりました。変更理由としてはセキュリティのためとか。ワイルドカードが使えないのでそういったときはCookieでリダイレクトさせればいいです。

CocoaPodsクイックリメンバー用【ほぼメモ】

About CocoaPods iOSのライブラリ管理ツール。他言語のツールだとBundler(Ruby)とかYarn(JS)とかが近い How to Start Rubyで動作するためGemからインストール gem install cocoapods Podfileを作成 pod setup Commands Podfile.lock > Podfileの優先順位でラ…

Base64エンコードとBase64URLエンコードについて

GoogleさんのProtocol Buffersでエンコードしたデータをクエリパラメータで含めようと思ったので改めてBase64エンコードとBase64URLエンコードについて調べてみました Base64エンコーディングについては以下の記事でも軽く触っていますが、データを印字可能…