ようへいの日々精進XP

よかろうもん

俺のメモ

Google Drive API の Push Notification を利用して Google Drive 上の変更を AWS Lambda で受け取る (試み)

これは 経緯 Google Drive API に Push Notification を理解する 概念図 ページトークン チャンネル 変更内容の通知 本題 (変更通知を AWS Lambda で受け取る) 構成 コード 実験 事前の準備 チャンネル作成 ファイル追加 ファイル削除 アクセス権の付与や削…

Slack API でグループメンションを送信する際の書き方

経緯 Slack API でグループメンションを送る方法 (書き方) が解らなくて調べた。 書き方 以下のように書く事でグループメンションが可能であることが解った。 例: ID は、https://api.slack.com/methods/usergroups.list にて確認出来る。 { "ok": true, "…

Happy Hacking Keyboard Professional BT を Windows 10 でペアリングしようとして PIN が入力出来ない場合の対処手順

経緯 手順 参考 経緯 Happy Hacking Keyboard Professional BT (以後、HHKB BT) を Windows 10 でペアリングしようとして PIN が入力出来ない場合の対処手順が個人的にトリッキーだったのでメモしておく。 手順 この時点で、「え、PIN って何を入力すれば良…

Active Support が便利だった

経緯 Active Support について デモ Ruby 本体にも transform_keys というメソッドがあった Active Support の deep_transform_keys メソッドでやってみる Active Support を使わないパターンを考えた ということで おまけ 経緯 ほんと、タイトルの通り。 以…

おそらく 20 分くらいで Elastic APM を試す

これは Elastic APM とは Elastic APM 5min Setup 用意するもの リポジトリ 注意 docker-compose.yml Dockerfile Gemfile apm/apm-server.yml database.yml.patch run-test.sh セットアップ ファイル構成 Rails がインストールされているコンテナイメージを…

俺は月末の振り返りを Slack と Ruby でやっている

これは はじめに さて 以上 これは YAMAP エンジニア Advent Calendar 2021 の第 17 日目の記事にします。 qiita.com はじめに 皆さん、日々の作業の振り返りってどのようにされていますか? 自分は、以下のように、退勤しますポストのスレッドに「俺の夕会…

ECS デプロイが失敗した際の挙動を確認 〜 Nヶ月後の自分の為に 〜

これは はじめに コンテナの pull に失敗した場合 (例えば、コンテナイメージが存在しない場合) コンテナの起動に失敗した場合 (アプリケーションの異常終了) ecspresso rollback circuit breaker 機能 メモ ecspresso の使い方 ecspresso init ecspresso de…

Github API で仕事が捗ったのでメモ 〜 Nヶ月後の自分の為に 〜

これは 経緯 (1) やったこと (1) 経緯 (2) やったこと (2) 以上 これは YAMAP エンジニア Advent Calendar 2021 の第 13 日目の記事にします。 qiita.com そして、記事の内容は、以下の記事の焼き直しです。 inokara.hateblo.jp 経緯 (1) Github Organizatio…

Slack API を利用してメッセージに絵文字リアクションするメモ

やりたいこと やったこと 処理の流れ 準備 1. 新しい App を登録 2. App に必要な権限を付与 3. App をチャンネルに追加 4. ざっくりとシェルスクリプトを書く 動作確認 以上 やりたいこと Slack のメッセージに API を利用して直近のメッセージに絵文字のリ…

Terraform で Lambda@Edge を設定する個人的なテンプレート (2) 〜 Basic 認証を設定する 〜

tl;dr Lambda 関数を書き散らす Lambda@Edge を設定する CloudFront ビヘイビアに Lambda@Edge を設定 参考 tl;dr 個人的に Lambda のデプロイは Serverless Framework 一択のつもりだったけど, Terraform で CloudFront を作っておいて, Lambda@Edge だけ S…

Terraform で Lambda@Edge を設定する個人的なテンプレート

tl;dr Lambda 関数を書き散らす Lambda@Edge を設定する CloudFront ビヘイビアに Lambda@Edge を設定 参考 tl;dr 個人的に Lambda のデプロイは Serverless Framework 一択のつもりだったけど, Terraform で CloudFront を作っておいて, Lambda@Edge だけ S…

AWS Batch で利用する Managed なコンピューティング環境の EBS ボリュームサイズを拡張する (Amazon Linux 1 編)

tl;dr 対処 概要 EBS ボリュームサイズの拡張 Docker ストレージの拡張 Docker ストレージの拡張 インスタンス起動時に実行させる コンピューティング環境の作成 ジョブキューの修正 以上 参考 tl;dr AWS Batch で利用するマネージドなコンピューティング環…

macOS で ThinkPad TrackPoint II キーボード (英字配列) を利用して一週間が経ったのでメモ

tl;dr トラブル その他 良いところ なんとかならないかなってところ 以上 tl;dr inokara.hateblo.jp ThinkPad TrackPoint II キーボードを macOS で使い始めて一週間が経ったので使用感等をざっくりと書いてみる. トラブル 致命的ではなかったけど, 当初は「…

Github Actions やりたいこと別テンプレート集 (1)

tl;dr GitHub Actions hosted runners の情報を知りたい 概要 リンク 環境変数を設定したい 概要 テンプレ サンプル出力 ブランチ名を取得したい 概要 テンプレ サンプル出力 以上 tl;dr 最近, Github Actions も触り始めて, 色々と学びがあるのでメモしてい…

ecs-deploy をインストールする CircleCI orbs を作ってリリースしました

tl;dr CircleCI orbs とは 作ったもの この orbs がもたらしたメリット 実装 とてもシンプルなシェルスクリプト orbs ソースコードを分割する テスト 以上 参考 tl;dr ECS クラスタのタスク定義を作成して ECS サービスを更新する (ECS にアプリケーションを…

ThinkPad TrackPoint II キーボード (英字配列) を導入した

tl;dr ThinkPad TrackPoint II キーボード macOS で使う macOS で使う上でのカスタマイズ 気付いたこと等 初代よりも キータッチ TrackPoint の真ん中ボタンがうざい 以上 tl;dr 初代を使っていて, 二代目がとても良いという記事を読んだので Lenovo ストア…

Serverless で An error occurred: xxxxxxxxx - A version for this Lambda function exists ( 1 ). Modify the function to create a new version. というエラーが出た場合の対応 (暫定版)

tl;dr versionFunctions: false serverless.yml に追加 versionFunctions について 参考 以上 tl;dr Serverless で, コードを一切変更せずに, serverless.yml の設定だけをイジって (関数にタグを設定した) デプロイ sls deploy したら, 以下のようなエラー…

ダウンロードした RDS (PostgreSQL) のスローログで duration とクエリだけを出力するワンライナー

tl;dr ワンライナー 参考 以上 tl;dr ダウンロードした RDS (今回は PostgreSQL) のスローログを以下のような感じで出力したいと思って試行錯誤したのでメモしておきます. xxx1.xxx ms SELECT * FROM xxxx WHERE xxx1 xxx2.xxx ms SELECT * FROM xxxx WHERE …

シュッと CloudWatch Alarm の動作確認をしたい場合 に AWS CLI を使えば良かった

tl;dr set-alarm-state とても tl;dr CloudWatch Alarm の通知がちゃんと届くか確認したい場合, 都度, しきい値をズラしたりして確認していましたが, AWS CLI で確認することが出来るので備忘としてメモしておきます. set-alarm-state cloudwatch の set-ala…

CircleCI で checkout がコケる場合 (1)

tl;dr 何が起こっていたのか どうしたか 以上 tl;dr 勉強用の Github リポジトリと連携していた CircleCI プロジェクトで, 以下のようなエラーが出てソースコードのチェックアウトが失敗していた. ... Using SSH Config Dir /home/circleci/.ssh Cloning int…

シェルスクリプトを書く時には set -e をつけた方がいいのかな...どうなんだろう

tl;dr for example 解決策 その 1 〜 がんばってエラーハンドリングを実装する 〜 その 2 〜 set -e を付与する 〜 注意点 再掲 実例 (1) 実例 (2) 〜 grep コマンド 〜 以上 tl;dr とあるプロジェクトのデプロイを CircleCI で実行していて, いくつかのコマ…

PHPUnit のテスト結果を人間に優しい感じで出力する

モチベーション ということで 引き続き シンプルなテスト結果 ログ出力 phpunit.xslt を噛ますといい感じになる もう少し踏み込んで 以上 モチベーション 特に何もオプションを指定しない場合の PHPUnit の結果があまりにも人間に対して素っ気ない感じがした…

CodeBuild で PHPUnit を実行したかったので PHP のコンテナイメージを作って公開した

諸般の事情で 作ったもの デモ ビルド build.sh を修正 ビルド とりあえず手元の環境で docker run PHPUnit 実行 CodeBuild では… イメージの指定 実行結果 以上 諸般の事情で CodeBuild 用の PHP イメージを作って公開してみた。このコンテナイメージを利用…

俺の郷 〜 尾崎亜美、鈴木亜美、時東ぁみもみんな一緒に EC2 AMI を作成、削除するツールを作ってリリースした 〜

オリビアを聴きながら AMI を管理する時の個人的な課題 ということで amiCtrl を作ってみた Be Together(導入) ヘルプ AMI 作成 AMI を確認 AMI を削除 終わり Describe Image して Snapshot の ID が取れることを知らなかったので… gox を初めて使った gh…

俺は AWS について何も解っていなかった 〜 Step Functions の SendTaskFailure に纏わる各種制限 〜

やりたかった事(ハマった事) 解っていなかった事 ということで やりたかった事(ハマった事) 以下のように Golang で Step Functions の Activity Task で実行される処理が失敗した際に出力される結果を TaskFailure として送信したかった。 ... params :…

gom の使い方メモ

gom とは 試した環境 gom の導入 gom を使ったパッケージの導入 ハマった vendroing Gin を起動 以上 gom とは Go のパッケージを gem のように管理するツールという認識です。 github.com 試した環境 $ sw_vers ProductName: Mac OS X ProductVersion: 10.1…

awspec にプルリクエストした時のメモ

tl;dr awspec とは Rspec 基礎知識 プルリクエストして学ぶ awspec テストしたい AWS リソース テスト toolbox Stub Spec Type Helper /lib/awspec/helper/finder.rb lib/awspec/helper/finder/cloudwatch_logs.rb ちょっとマッチャ lib/awspec/matcher/have…

(超メモ)初老が考えた Datadog を使った ログ監視 2 パターン

おはげようございます。 tl;dr Datadog でログ監視(ログの中から特定のパターンにマッチしたら何らかのアクションを行う)の方法を模索していて以下の 2 つのパターンを考えたのでメモ。 Datadog の Agent Check で監視する Fluentd を利用する アプリケー…

いまさらで恐縮ですが cloud-init について勉強する(1)

追記 各モジュールの動作確認には以下のようなシェルスクリプトを作って行うと捗る。こちら参考になりました。ありがとうございます。 #!/bin/sh rm -rf /var/lib/cloud/* cloud-init init --local cloud-init init cloud-init modules --mode config cloud-…

コンテナで簡単(かもしれない)クラウド夜逃げの準備と実践

自分メモ。 背景 自宅で Redmine の為に利用していた VPS の契約満了 小遣い削減の為に VPS の延長無し Redmine 環境をどっか(Docker)に移行しなければならない Redmine 環境はフル Docker コンテナ環境 とりあえずはいつでも夜逃げ(移行)出来るように準…