Next.js を Google App Engine にデプロイする

GAE 便利さに気づいてからめちゃくちゃ気に入っている。 最近開発が活発な Cloud Run や、Firebase のバックエンド実行環境でもある Cloud Functions が話題に登りがちだけど、2nd gen になってからの GAE はめちゃめちゃいいです。 トラフィック分割などの…

.gcloudignore で全部無視して必要なものだけ指定する

App Engine や Cloud Function や Firebase プロジェクトのデプロイ時などでしばしばやる。 TypeScirpt などトランスパイルが必要な言語をデプロイする際に、実行に必要ないファイルをたくさんアップロードしていることがある。 .gcloudignore で全部 ignore…

BigQuery スケジュールされたクエリを設定する際の動作確認コマンド

Scheduling queries または Scheduled queries と呼ばれているもの、日本語だといまいちしっくりこない名前。定期的にクエリを実行して結果を宛先テーブルへ書き込んでくれる。メールで通知したり Pub/Sub イベントを投げたりもできる。 クエリのスケジュー…

Cloud Functions でログをグルーピングする

または Cloud Functions で httpRequest ログを書く方法。 Cloud Logging (もう Stackdriver ブランドなくなりましたね)の好きな機能に、リクエスト内のログをまとめて表示する機能がある。アプリケーション内での一連のログをまとめて追えてとても便利。 me…

Cloud Functions PubSub トリガはデフォルトでは再送しない

タイトルそのまま 以下のように Cloud Functions をデプロイすることで、トピックへメッセージが来るたびに function を起動してくれる。 $ gcloud functions deploy --trigger-topic=TOPIC_NAME 裏では gcf-{function}-{topic} という設定のサブスクプショ…

Could not load the default credentials エラーについて

Cloud Functions でしばしば見るエラー、Firebase Functions も中身は同じなので起きる。 なにやらちゃんと動いていないぞ... と Stackdriver Logging を見にいくと、こういうエラーメッセージが書かれている。 Error: Could not load the default credentia…

gts で TypeScirpt をすぐ書き始める

gts は Google の TypeScirpt style guide と Linter 設定が入った npm package。 googleapis 以下などの Google が公開している各種 TypeScirpt プロジェクトで使われている。 github.com TypeScript は大変気に入っているけど、新たにプロジェクトを作って…