27 ポイント 投稿者 xguru 7 일 전 | まだコメントはありません。 | WhatsAppで共有
  • ローカル開発やCI/CDテストで、実際のAWSがなくても素早く互換環境を構築可能
  • 単一バイナリで軽量にテスト環境を用意でき、Dockerベースでの実行にも対応
  • 認証なしで動作するため、自動化パイプラインでAWS認証情報を用意する負担を減らせる
  • 76のAWSサービスを幅広くサポートし、S3、SQS、DynamoDB、Lambda、IAM、CloudWatch、ECS、RDSといった主要領域をまとめて扱える
  • デフォルトでは localhost:4566 で動作する ローカルAWS互換エンドポイント
  • KUMO_DATA_DIR を設定すると、サービスごとのJSONファイルによる 任意のデータ永続化 が可能で、未設定時は クリーンなインメモリ実行
  • すべてのリクエストを 構造化ログフィールド とともに記録
    • INFO: HTTPメソッド、パス、ステータスコード、レイテンシ、リクエストID、APIターゲット情報など
    • DEBUG: リクエスト本文全体 まで記録するため、リクエストペイロード自体を確認したいデバッグ作業に便利
  • /kumo/ 配下に 追加のテスト用エンドポイント を提供
    • AWS公式APIの一部ではないが、テスト中のアプリケーション動作を検証するのに有用
    • SES v2送信メールの確認

      • GET /kumo/ses/v2/sent-emails により、SES v2 SendEmail API で送信されたメール一覧を取得
      • レスポンスには MessageId、送信元アドレス、宛先、件名、本文、送信時刻などを含む
    • Pinpoint SMS Voice v2送信メッセージの確認

      • GET /kumo/pinpointsmsvoicev2/sent-messages により、SendTextMessage API で送信されたSMS一覧を取得可能
      • レスポンスには MessageId、宛先電話番号、送信者識別子、メッセージ本文、送信時刻などを含む
    • メール・SMS送信機能をテストする際、外部サービスに依存せず 結果検証 を行うのに特に便利
  • MIT License

対応サービス

  • 合計 76のAWSサービス をサポート
  • ストレージ

    • S3、S3 Control、S3 Tables、DynamoDB、ElastiCache、MemoryDB、Glacier、EBS に対応
  • コンピュート

    • Lambda、Batch、EC2、Elastic Beanstalk に対応
  • コンテナ

    • ECS、ECR、EKS に対応
  • データベース

    • RDS、Neptune、Redshift に対応
  • メッセージングと統合

    • SQS、SNS、EventBridge、Kinesis、Firehose、MQ、Pipes、MSK に対応
  • セキュリティとID

    • IAM、KMS、Secrets Manager、ACM、Cognito、Security Lake、STS、Macie に対応
  • モニタリングとロギング

    • CloudWatch、CloudWatch Logs、X-Ray、CloudTrail に対応
  • ネットワーキングとコンテンツ配信

    • CloudFront、Global Accelerator、API Gateway、Route 53、Route 53 Resolver、ELBv2、App Mesh、Location に対応
  • アプリケーション統合

    • Step Functions、AppSync、SES v2、Pinpoint SMS Voice v2、Scheduler、Amplify に対応
  • 管理と構成

    • SSM、Config、CloudFormation、Organizations、Service Quotas、CodeConnections、Backup に対応
  • 分析とML

    • Athena、Glue、Comprehend、Rekognition、SageMaker、Forecast、Data Exchange、Entity Resolution に対応
  • 開発者ツール

    • CodeGuru Profiler、CodeGuru Reviewer に対応
  • その他のサービス

    • Cost Explorer、DLM、Directory Service、EMR Serverless、FinSpace、GameLift、Resilience Hub に対応

使用例

  • S3

    • S3クライアント では BaseEndpointhttp://localhost:4566 に設定し、UsePathStyle を有効化してローカルエミュレーターに接続する
    • バケット作成からオブジェクトアップロードまでの流れにより、オブジェクトストレージのテスト を実際のAWSなしで再現可能
  • SQS

    • SQSクライアント も同じローカルエンドポイントを使い、キュー作成後にメッセージの送受信を行う流れ
    • 非同期メッセージングロジックを ローカル統合テスト で検証するのに適している
  • DynamoDB

    • テーブル作成、キースキーマ定義、アイテム保存の流れを通じて NoSQLワークフロー を再現できる
    • 実際のクラウドリソースがなくても、アプリケーションのデータアクセスロジックを確認しやすい
  • Secrets Manager

    • シークレット値の作成と取得の例も含まれており、シークレットストア連携 もテスト可能
    • JSON形式の機密情報をローカルで扱うアプリケーションの検証に有用

まだコメントはありません。

まだコメントはありません。