メモ
この記事は自分のためにピクスタ株式会社での思い出や転職の経緯を備忘録として書いたものです。
年に一度RI購入のためサーバーの棚卸しをするのですが、その時にT2インスタンスがちらほら...。AWSも最新のファミリータイプを使用することを推奨しているので、ここいらでT3にするぞと対応したらドハマりしました。今回はAWS EC2 Ubuntu 14.0.4インスタンス…
サービスを運用していると、エラーを検知/通知する仕組みがほしくなります。 少し調べてみると、RailsでエラーをSlackに通知したいのであれば、exception_notificationとslack-notifierの2つのgemを入れるのが多い印象を受けました。一見良さげに見えたので…
.bundle/configの内容を公開
Snapmartの検索サーバーはAmazon Elasticsearch Service(以下ESS)で運用しているのですが、Kibanaを使ってデータ分析をしたくなりました。ESSはVPC内にあるため、アプリケーションサーバーからElasticsearch APIで検索実行は問題なく行えますが、管理者PCか…
先日、Expoアプリで使うWebViewはreact-native-communityを使わなければ表示させることができないという記事を書きました、今回もWebViewネタ。 WebViewを使用するときは、大きく2つに分かれます。 1. URLを指定する場合2. HTMLを記述する場合 WebViewはWebV…
ExpoアプリでWebViewを使用する際、以下のソースコードでは、画面に文字列を出力することができません。今回はExpoアプリで使うWebViewはreact-native-communityを使わなければ表示させることができない問題の解決方法を書きます。
管理画面的なシステムで、RailsからCSVを出力し、それをエンドユーザーがExcelで開くようなシュチュエーションで困ったことがありました。 * セル内の日本語が文字化けしてしまう * 0埋め文字を生成しても、Excelで先頭の0が除かれてしまう それぞれ5分ほど…
技術書典8は新型コロナウィルスにより中止になりましたが、印刷所への入稿が割引率が最も高い早割で申し込むことはできました。 技術書典の参加は今回で2回目でしたが、1回目で覚えた内容をほぼ忘れていたため、 前回メモ書き程度に残した自分のブログを頼り…
development環境にMySQLを構築して一からmigrationを実行しようとした時に、Index column size too large.と言われてしまいました。 この記事ではrake db:migrationでIndex column size too large.と言われてしまった場合の対応についてメモ程度にまとめます…
クリスマスといえば、フライドチキン。フライドチキンといえば、揚げた鶏。揚げた鶏といえば唐揚げ。揚げた鶏といえば竜田揚げ。さて、唐揚げと竜田揚げとフライドチキンの違いがわからないことに気づいた。これは大変まずい。 もし仮に、クリスマスパーティ…
AWS S3を利用していると、ある特定のバケット内のオブジェクトをワイルドカードを使って削除したい場面があると思います。 シェルスクリプトのrmコマンドと同じノリでいけるかと思いきや、オプションを指定しなければならなかったので、そのメモを残します。
iOSアプリの審査申請時、広告ID(IDFA)を選択するように言われます。間違った選択をすると審査で落とされてしまうのですが、毎度毎度「どの設定したらいいんだっけ?」と悩まされます。今回は自分用にReact Native + ExpoによるiOSアプリ審査申請時の広告ID(I…
自分は、bundle installをする時に--path vendor/bundleを付けてプロジェクトごとにgemを管理しているのですが、なぜかこのオプションだけ覚えることができないので、備忘録的に書く
AWS ELBの暖気申請(Pre-Warming)をしたかったのですが、サポートのプランがBusiness以上でなければ申請できないため、自前でPre-Warmingをする必要がありました。 AWS ELBは負荷が上がった場合に、AutoScaleするLBです。 通常、事前に大量のトラフィックが予…
タイトルの通り、ReactNative 0.59.8において、`CameraRoll.getPhotos({first:1234})`がエラーになってしまいます。また、これはiOSのみで発生します。エラー文を見た感じ、optionとしてassetTypeに何かしら指定すれば良さそうです。ただ、ドキュメントを見…
AWS IAMでは、特定のグループにポリシー(権限)を設定し、そのグループにユーザーを追加することで、権限管理が容易になります。設定できるポリシーは、AWSが用意しているポリシーと、独自に設定できるポリシーの2パターンあります。 今回は、AWS IAM ユーザ…
サービスを運用していると、サーバー内のディスク空き容量が枯渇してしまうことがしばしばあると思います。以前「AWS EC2のルートボリューム(EBS)をダウンタイム0で拡張する方法」について書きましたが、対応の一つとして格納されているファイルを整理するこ…
Webサービスを運営していると、夜中にWebサーバーのプロセスが突然死してしまい、朝に気づくということが多々あります。 流石に人間が24時間365日監視しているのはツラいので、ある特定のプロセスが落ちたら自動で検知と再起動という処理を行いたいです。 今…
TV放映などで、一時的にスケールアップさせたい時に、オートスケールの機構がなければ職人による技が光ります。 今回は、スポットリクエストで増やしたEC2インスタンスのIPをAWS ESS access policyに登録したかったので、IPを取得する必要がありました。
Snapmart社のstagingのDB環境は、AWS RDSを使用しています。 毎日24時にproduction環境のスナップショットからstaging用DBを作成し、update文で個人情報やメールアドレスなどをマスクした状態にしています。 また、stagingが配置されているVPCは社内ネットワ…
RailsとJavaScriptを同時に扱っていると((Style Guideで記法が異なる言語を同時に扱っている場合))、snake_caseからCamelCaseに置換したい時がしばしば訪れます。 一つずつ修正した方が、人間の温かみを感じることができるコードになると思うのですが、置換…
TreasureDataを運用していて、存在するDBとその中のテーブルのスキーマを一覧で取得したいことがあったので調べて見ました。 GUI上からDBとテーブルを一つずつ確認するのはさすがにツラいのでサクッと見れる方法はこちらです。 `td db:list -f tsv | awk '{ …
$ bundle config --local build.mysql2 "--with-ldflags=-L/usr/local/opt/openssl/lib"
リモートのブランチを削除する git push origin :branch_name