レスキューナウテックブログのフィード
https://zenn.dev/p/rescuenow
日本で唯一の危機管理情報を専門に取り扱う防災・BCPの専門企業、(株)レスキューナウです。当社で活躍するエンジニアの技術ブログを中心に公開していきます。
フィード

Pull Requestの状況把握にDevin Reviewが便利
レスキューナウテックブログのフィード
はじめに複数のリポジトリに関わっていると、Pull Requestのレビュー状況が分からなくなることがあります。Devin Reviewを使ってみて、自分が関わるPRの状況をステータスごとに整理して表示してくれるポータルとして便利だったのでまとめました。Devin Reviewには自動レビューや差分の論理的グルーピングといった便利な機能もありますが、本記事ではレビュー状況管理の観点に絞って紹介します。 前提条件Devinを導入していること 画面の説明サイドバーにCreated PRsとInvolved PRsが表示され、中央に各PRがステータスごとに分類されて表...
2日前

GCE上のMongoDBスロークエリをダッシュボードで可視化
レスキューナウテックブログのフィード
はじめにGoogle Compute Engine(GCE)上でMongoDBを運用する場合、Cloud Loggingにスロークエリログを送信することで、SQLクエリでの分析や、モニタリングダッシュボードへの組み込みが可能になります。本記事では、Cloud Loggingに送信されたMongoDBのスロークエリログを使用して、以下のようなダッシュボードを作成するまでの手順をまとめました。 前提条件MongoDBはGCE上のDockerコンテナとして動作していることContainer-Optimized OSを使用していることDockerのjson-fileログドラ...
4日前

AWS歴6ヶ月がSAMとTerraformの併用で苦しんだ話
2
レスキューナウテックブログのフィード
はじめにこんにちは、しもちです。AWSを本格的に触り始めて6ヶ月のぺーぺーです。現在、サーバーレス構成のWebサービスを開発しています。フロントエンドがSPA + Amplify、バックエンドがLambda + AppSync(GraphQL)、その他DynamoDB・EventBridge・WAFなどを使っています。このサービスの立ち上げ時、インフラ管理はAWS SAMとTerraformの併用で始めました。「アプリケーションはSAM、それ以外はTerraform」というきれいな棲み分けのつもりでしたが、本番運用に向けてWAFや監視を入れようとしたときに苦しくなり、最終的にT...
4日前

小6の娘にスマホを渡す前に自分なりにまとめてみた
レスキューナウテックブログのフィード
今回はいつもとちょっと毛色の違った記事を書いてみました。この春、娘が小学6年生になります。それに合わせて、ついにスマホを買い与えることにしました。正直、悩みました。まだ早いかな、と思う気持ちもあったけれど、友達との連絡手段や緊急時のことを考えると、そろそろかなと。夫婦でいろいろ話し合った末の決断です。でも、いざ渡そうとなったときに「あれ、何を伝えればいいんだろう?」と困ってしまいました。「夜は使わない」「知らない人と話さない」みたいなルールは思いつくんですが、それだけでいいのかな、と。そこで改めて考えてみました。娘にスマホを渡す前に、親として伝えておくべきことって何だろう?ルール...
14日前

Amazon DocumentDBで読み取り専用ユーザを作成してMongoDB Compassで接続する
レスキューナウテックブログのフィード
はじめにAmazon DocumentDBを運用していると、「開発者やアナリストに読み取り専用でデータを確認させたい」という場面が出てきます。GUIツールとしてMongoDB Compassを使えば直感的にデータを確認できるため、非エンジニアにも扱いやすい選択肢です。ところが、DocumentDBで読み取り専用ユーザを作成し、MongoDB Compassから接続しようとすると、単純に read ロールを付与しただけでは認証エラーで弾かれます。本記事では、読み取り専用ユーザの作成手順と、Compassで接続する際にハマりやすいポイントについて解説します。 環境Amazon...
16日前

axiosにサプライチェーン攻撃が発生した話と、担当プロジェクトでやっていた備え
レスキューナウテックブログのフィード
はじめにこんにちは、しもちです。本日(2026年3月31日)、npmパッケージのaxiosにサプライチェーン攻撃が発生しました。axiosは週間1億ダウンロードを超えるHTTPクライアントライブラリなので、かなり大きな影響が出ています。今回は攻撃の概要と、担当プロジェクトでの影響、そしてサプライチェーン攻撃への備えについて書きます。 何が起きたのか攻撃者はaxiosのメンテナー(jasonsaayman)のnpmアクセストークンを窃取し、通常のCI/CDパイプラインをバイパスして悪意のあるバージョンを直接npmに公開しました。公開された悪意のあるバージョンは以下の2つです...
17日前

cmuxで日本語フォントが適用されなくて困った話
レスキューナウテックブログのフィード
はじめにこんにちは、しもちです。普段ターミナルはGhosttyを使っているのですが、最近AIコーディングエージェント用のターミナルとしてcmuxを試し始めました。cmuxはGhosttyのレンダリングエンジン(libghostty)ベースなので、Ghosttyの設定ファイルがそのまま使えます。ところが実際に起動してみると、Ghosttyでは問題なく表示されていた日本語フォントがcmuxでは崩れていました。その対処法を共有します。 症状Ghosttyの設定ファイルには、以下のようにフォントを指定しています。# ~/Library/Application Support/co...
18日前

国交省の不動産情報ライブラリMCPサーバを試す
レスキューナウテックブログのフィード
tokadev です。国土交通省 不動産・建設経済局 地理空間情報課から、不動産情報ライブラリAPIを統合的に呼び出すためのMCPサーバ 「地理空間MCP Server」 が公開されていました。https://github.com/chirikuuka/mlit-geospatial-mcphttps://www.mlit.go.jp/tochi_fudousan_kensetsugyo/tochi_fudousan_kensetsugyo_tk17_000001_00048.html以前の記事では、国交データプラットフォームの MCP サーバー(mlit-dpf-mcp)を紹介...
23日前

Cloud Monitoring のアラートポリシーを再設計して PagerDuty の発火を抑えた話
レスキューナウテックブログのフィード
はじめに弊社では GCP の Cloud Run 上で複数のサービスを運用しており、Cloud Monitoring のアラートポリシーで PagerDuty に通知する運用を行っています。しかし、一時的な DB 接続エラーなど対応不要なエラーでも PagerDuty が発火してしまい、担当者の負担になっていました。本記事では、ログベースの指標(Log-based Metrics) を導入し、アラートポリシーをサービス別に再設計することで、PagerDuty の不要な発火を大幅に削減した取り組みを紹介します。 変更前の構成と課題 変更前の構成変更前は、1つのアラートポ...
25日前

SCPでlambda:AddPermissionがブロックされる環境でAppSync Event APIの認証を実現する
レスキューナウテックブログのフィード
はじめにこんにちは、しもちです。AWS AppSync Event API はリアルタイムな Pub/Sub を手軽に実現できるサービスです。HTTP で publish し、WebSocket で subscribe する。シンプルな構成で、リアルタイム通知やイベント配信を実装できます。しかし、組織の SCP(Service Control Policy)で、Principal が AWS サービスの場合に lambda:AddPermission がブロックされている環境では、AppSync の Lambda オーソライザーが使えないという問題に直面しました。この記事では、...
25日前

Playwright + OWASP ZAP + Claude Code で E2E テストから脆弱性診断まで一気通貫でできるかやってみた
レスキューナウテックブログのフィード
はじめに最近、他チームのエンジニアが「Playwright で書いた E2E テストを OWASP ZAP に通して脆弱性診断をやってみた」という話を聞きました。「E2E のシナリオってそのまま脆弱性診断にも使えるの?」気になったので自分でも試してみました。その記録です。 やったこと(全体像)シンプルな Todo アプリを題材に、以下の流れで試しました。1. Next.js で Todo アプリを構築2. Playwright で E2E テスト(12シナリオ)を作成3. バックエンドを FastAPI + MySQL に変更(Docker)4. E2E シナリオ...
1ヶ月前

Twitter/X APIの`since_id`が仕様通りに動かない件を調べてみた
レスキューナウテックブログのフィード
はじめにTwitter/X APIを利用した投稿取得処理で、since_idを指定しているにもかかわらず、そのID自体の投稿が結果に含まれるケースに遭遇しました。(別件のランタイム更新をきっかけに気づきましたが、調査の結果ランタイム更新とは無関係でした。)公式ドキュメントには「指定したIDより大きい(つまり、より新しい)結果を返す」と明記されているので、since_idで指定したID自体は含まれないはず。これは不具合なのでは?と思い、公式見解や同様の報告がないか国内外の情報を調べてみました。結論から言うと、公式の認知・見解は見つかりませんでしたが、同じ現象に遭遇している開...
1ヶ月前

セキュリティチームが「家計簿」から始めた理由。コスト削減と開発体験を両立させた立ち上げ3か月の記録
レスキューナウテックブログのフィード
株式会社レスキューナウに新設されたセキュリティチームに、初期メンバー兼リーダーとして参画して3か月が経ちました。私はこれまで、インフラを主軸に情シス、フルスタック開発、マネジメントなど、少し風変わりなキャリアを歩んできました。レスキューナウが募集していた「インフラ経験から挑戦するセキュリティエンジニア(キャリアシフト採用)」は、まさに私の経験を総動員できる環境でした。今回は、この3か月で取り組んできた 「開発組織伴走型セキュリティ」 を振り返ります。 1. 「家計簿」から始めるガバナンスの可視化セキュリティチームの最初のミッションは、強固な壁を作ることではなく、現状の「透明...
1ヶ月前

リリース直前に技術スタックを入れ替えたけどうまくいった話
レスキューナウテックブログのフィード
はじめにこんにちは、しもちです。半年前にモバイルアプリエンジニアとして入社しましたが、最近はフルスタックで開発に携わっています。現在、新しいWebサービスの開発に参加しています(リリース前のためサービス名は伏せます)。マイクロサービスアーキテクチャで構築を進める中で、技術選定について考えさせられることがあったので、その話をします。最初は技術スタックを統一しようという方針で開発をスタートしました。しかし、リリース予定の3週間前というタイミングでバックエンドの技術スタックを入れ替えるという判断をしました。結果的にはうまくいったので、その過程で得た学びを書いてみます。 最初の技術...
1ヶ月前

GoogleCloud ランタイムのEOLチェックツールを作った話
レスキューナウテックブログのフィード
はじめにtokadev です。担当するプロジェクトが増えてきて Cloud Functions、Cloud Run、Cloud SQL などサービスのランタイムを把握するのが 面倒くさい 難しくなってきたので、ランタイム EOLをチェックして Slack に通知する仕組みを作りました。https://endoflife.date/ 要件Decommission か Deprecation かそれ以外かがわかる形で覚知がされれば良しとします。なお対象APIが有効化されていなければ問題なしとします。通知フォーマットDecommission, Deprecation ...
2ヶ月前

AWS Control Tower:Organizations間移行で遭遇する「Internal Failure」の真実と解決策
レスキューナウテックブログのフィード
!本記事の内容は、2026/02/20 時点での AWS Control Tower(LZ 4.0)での挙動に基づくものです。AWS Control Towerの仕様変更などにより異なる挙動となる場合があります。最新の情報は、AWS公式ドキュメントやAWSサポートと確認されるようにお願いします。 はじめに2025年後半、AWS Organizationsに待望のアップデートが舞い込んできました。(関連情報)AWS Organizations間でのメンバーアカウントの直接移動がサポートされました2025年11月19日のアップデートにより、Organizations間での直接...
2ヶ月前

Cloud Run「インスタンスベース」と「リクエストベース」の比較
レスキューナウテックブログのフィード
はじめにCloud Run を使っていて、「課金設定ってインスタンスベースとリクエストベースがあるけど、結局どっちを選べばいいの?」と思ったことはありませんか?自分は今回 Google Cloud のコスト調査をしている中でこの点が気になりました💰実はこの選択、サービスの特性によっては月額コストが何倍も変わることがあります。この記事では、Google Cloud の公式ドキュメントをもとに、2つの課金モデルの違いを解説してみます。 そもそも2つの課金モデルとは?Cloud Run には、以下の2つの課金モデルがあります。リクエストベース課金(デフォルト) … リクエスト...
2ヶ月前

API GatewayをTLS 1.3限定にしたのに脆弱性診断でTLS 1.2が検知される理由
レスキューナウテックブログのフィード
はじめにAPI GatewayのREST APIで「セキュリティポリシー(TLS 1.3以上)」を設定したのに、サードパーティの脆弱性スキャンツールから「TLS 1.2の暗号スイートが有効である」と指摘されることがあります。「設定は正しいはずなのに、なぜ?」と悩むケースですが、実はこれ、API Gateway(リージョナルカスタムドメイン)の仕様とSNIの挙動が深く関係しています。 現象:TLS 1.3限定設定なのにTLS 1.2が検知されるAPI Gatewayのカスタムドメイン設定で、最新のセキュリティポリシー(例:SecurityPolicy_TLS13_1_3_20...
2ヶ月前

Figma MCPサーバー×ClaudeCodeでどこまで忠実にデザインを再現できる?
レスキューナウテックブログのフィード
はじめにFigma MCPサーバーを使ってAIのClaude CodeがFigmaファイルのデータを詳細に読み取れるようになれば、どれだけの再現度で、webサービスのデザインを作ることができるのか検証してみたくなったので試してみました。 今回の作業環境・MacOS・Claude Codeインストール済み・Figma(プロフェッショナル)・UI Library: shadcn/ui・VSCode(Extension:Claude Code for VS Code)https://code.claude.com/docs/ja/setup#native-install-...
3ヶ月前

Cloud SQL (MySQL) のデータをGCS経由で別プロジェクトへ移行する
レスキューナウテックブログのフィード
はじめにシステム移行や環境分離などで、Google Cloud SQLのデータを別のプロジェクトにあるCloud SQLインスタンスへ移行したいケースがあります。今回は、Cloud Storage (GCS) を踏み台にして、特定のテーブルをエクスポートし、別プロジェクトのデータベースへインポートする手順をまとめました。 概要移行の流れは以下の通りです。ソースプロジェクト:Cloud SQL から GCS バケットへデータをエクスポート権限設定:移行先インスタンスのサービスアカウントに、GCSへのアクセス権限を付与ターゲットプロジェクト:GCS バケットから Clo...
3ヶ月前