タグ

ブックマーク / dev.classmethod.jp (214)

  • Claude Codeを徹底解説してみた(前編) | DevelopersIO

    こんちには。 データ事業機械学習チームの中村(nokomoro3)です。 今回はClaude Codeを徹底解説したいと思います。 記事について 私は元々はCursorを使っており、Claude Codeは必要なのか半信半疑だったのですが、試してみた感じエージェントの挙動はかなり期待通りな印象です。実際にCursorではコード補完やCmd + Kをメインに、エージェント的な動きはClaude Codeやるように最近使い分けを始めています。 使用感は主観に寄るところも大きいので文面でお伝えするのは難しいですが、Claude Codeのことを少しでも知ってもらい多くの人に使ってもらるよう、一通りの使い方を記事にしました。 以下の内容で記載しており、盛りだくさんとなっております。 Claude Codeの基的なセットアップ方法から解説 基礎的な使い方から応用(Permission、Gi

    Claude Codeを徹底解説してみた(前編) | DevelopersIO
  • カオスだったprismatixのインフラをTerraformで構成管理できるようにした話 | DevelopersIO

    prismatix SREチームの中山です。 この記事は、クラスメソッドのグループ企業であるプリズマティクス株式会社が提供するサービス prismatix の構成管理を改善した記録です。 一言で言えばTerraformで各種クラウドサービスのリソースを管理できるようにしただけなのですが、大変ではあったのでここに書き残そうと思います。 3行まとめ マイクロサービスアーキテクチャのサービスにおける構成管理で雑多なツールが利用されておりカオスだった Terraformに一化した オペレーションを簡素化でき、認知負荷もある程度下がったことで各種作業のリードタイムが改善 前提 prismatixとは 記事を読んでいただくにあたり、prismatixというサービスがどのような形でサービスを提供しているのか、前提となる情報を共有します。 prismatixは、「会員サービス」、「認証サービス」、「商品

    カオスだったprismatixのインフラをTerraformで構成管理できるようにした話 | DevelopersIO
    uokada
    uokada 2025/05/21
  • PostgreSQLのMCPサーバを使って自然言語でデータベースに問い合わせる | DevelopersIO

    はじめに Model Context Protocol(以下、MCP)とは、Anthropic社が公開しているオープンソースのプロトコルです。従来では、AIアシスタントと外部サービスを連携する場合、連携させるために都度開発が必要でした。MCPという仕組みを使うことで、そのサービスがMCPに対応していれば、AIアシスタントに対して設定を行うだけで外部サービスが持つデータにアクセスしたり、操作したりできるようになります。 Introduction - Model Context Protocol Introducing the Model Context Protocol 製造業において、各種センサーや連携システムから収集したデータがデータベースに蓄積されているにも関わらず、十分に活用しきれていないという課題を抱える現場も少なくありません。 記事では、PostgreSQL上のデータに対して、

    PostgreSQLのMCPサーバを使って自然言語でデータベースに問い合わせる | DevelopersIO
  • Amazon S3のマルチパートアップロードの流れをコードを書いて理解した | DevelopersIO

    初めに S3では巨大なファイルを分割して送信できるようにマルチパートアップロードと呼ばれる機能が存在しています。 AWS CLI を使用して、Amazon S3 にファイルをマルチパートアップロードする方法を教えてください。 これまで高レベルAPIでの呼び出しで細かく意識することがなかったのですが、 現在書いているfor RustのSDKでは高レベルAPIの機能が存在しないため具体的な処理と向き合う必要が出てきました。 今回は実際にコードを書いてそのフローを理解します。 ※ 実際のコードを差し替えている関係で一部利用されない変数等が存在します。 このプログラムについてはそのうち記事を書くと思います。 マルチパートアップロードのプロセス マルチパートアップロードのプロセス マルチパートアップロードは以下の3つのステップで構成されます。 マルチアップロードの開始 パートデータのアップロード マ

    Amazon S3のマルチパートアップロードの流れをコードを書いて理解した | DevelopersIO
    uokada
    uokada 2025/04/15
  • AWS Step Functions(JSONata)でAWS料金をSlackへ通知【Lambda無し】 | DevelopersIO

    「直近1週間ぐらいにAWSアカウント内で掛かったコスト」を Slack通知させる仕組みを作ってみました。 アーキテクチャと通知内容サンプルはこちら(↓)。 AWSコスト監視くん とってもシンプルですね。 シンプルに済んでいるのは Step Functions 内で JSONata が裏側で頑張っているためです。 JSONata はJSONデータ用の軽量なクエリおよび変換言語です。 複雑なクエリを表現でき、豊富な組み込み演算子と関数も備えています。 2024/11 より Step Functions にて、この JSONata が使えるようになりました。 ブログは「JSONataのキャッチアップ」と 「良い感じのAWSコスト通知」 をモチベーションに書きました。 さっそくアーキテクチャの展開方法とJSONataについて説明します。 アーキテクチャを展開する 事前準備#1: Slackクライ

    AWS Step Functions(JSONata)でAWS料金をSlackへ通知【Lambda無し】 | DevelopersIO
    uokada
    uokada 2025/04/12
  • Terraform で Datadog のモニターを管理する方法を試してみた | DevelopersIO

    こんにちは。テクニカルサポートチームのShiinaです。 はじめに Terraform は、クラウドや SaaS のリソースをコードで管理できる IaC(Infrastructure as Code)ツールです。 宣言的な構文でインフラを定義し、自動で作成・変更・削除できます。 記事では、Terraform を使って Datadog のリソースを管理する方法を解説します。 Datadog API キーと APP キーの発行、Terraform の初期設定、サンプルコードを用いたリソース作成を紹介します。 さらに、既存リソースのインポートやカスタムイベントの送信方法についても説明します。 Terraform を活用して Datadog の設定を効率的に管理したい方は、ぜひ参考にしてください。 事前準備 Datadog API キーと APP キーの発行 Terraform を利用するには

    Terraform で Datadog のモニターを管理する方法を試してみた | DevelopersIO
  • Model Context Protocol(MCP)の基礎に関して、社内勉強会で使用したスライド資料を公開します! | DevelopersIO

    はじめに 最近話題のModel Context Protocol(MCP)に関して、社内の勉強会(部内)で利用した資料を公開します! ざっくり以下の内容が入っています! プロトコル仕様 AWS MCPの話 開発方法 Webから叩く方法も確立されていくと、体験が大きく変わりそうですね!引き続きキャッチアップしていきたいです!

    Model Context Protocol(MCP)の基礎に関して、社内勉強会で使用したスライド資料を公開します! | DevelopersIO
  • Datadog による Amazon ECS on AWS Fargate コンテナログ収集のベストプラクティス | DevelopersIO

    こんにちは。テクニカルサポートチームのShiinaです。 はじめに コンテナ環境でのアプリケーション運用において、ログの収集と監視は非常に重要です。 エラーの早期発見や原因調査、セキュリティインシデントの検知など、様々な用途で活用されます。 記事では、Amazon ECS on AWS Fargate で実行されているコンテナのログを Datadog で収集する2つの方法について、それぞれの特徴や具体的な設定手順を解説します。 AWS FireLens を利用する方法と、CloudWatch Logs 経由で Datadog Forwarder を使用する方法を比較しながら、実装に必要なポイントを説明していきます。 ログの収集方法 Amazon ECS on AWS Fargate で実行されているコンテナログを収集して Datadog に転送する方法は2種類あります。 AWS Fire

    Datadog による Amazon ECS on AWS Fargate コンテナログ収集のベストプラクティス | DevelopersIO
    uokada
    uokada 2025/02/19
  • BigQuery の INFORMATION_SCHEMA からどんな情報が取得できるのか、全ての VIEW を確認してみた | DevelopersIO

    データセット情報 以下2つの View で、データセット関連の情報を取得できます。 SCHEMATA:データセット情報 SCHEMATA_OPTIONS:有効期限、ラベルなどのオプション情報 INFORMATION_SCHEMA を使用したデータセットのメタデータの取得 | BigQuery ドキュメント 取得できるのは、プロジェクト内のユーザーがアクセス可能なデータセットの情報に限られます。 SCHEMATA 実際に SELECT 文を実行して、SCHEMATA のデータを参照してみます。 以下のデータセット情報が取得できました。 CATALOG_NAME:プロジェクト名 SCHEMA_NAME:データセット名 CREATION_TIME:作成日時 LAST_MODIFIED_TIME:最終更新日時 LOCATION:ロケーション View には SCHEMA_OWNER 項目もあります

    BigQuery の INFORMATION_SCHEMA からどんな情報が取得できるのか、全ての VIEW を確認してみた | DevelopersIO
    uokada
    uokada 2025/02/05
  • BigQueryの利用ユーザに個別のデータセットやテーブルへのアクセス制御をしてみた(Cloud Shell編) | DevelopersIO

    BigQueryの利用ユーザに対して許可したデータセット/テーブルのみを表示させてアクセスさせるための設定を、少ない権限で実現するための方法。 BigQueryを利用する際、特定のデータセットやテーブルへのアクセスを利用ユーザに制限したい場合はどうすればよいでしょうか? 先日、Cloud Consoleを利用して、BigQueryの利用ユーザに対して許可したデータセット/テーブルのみを表示させてアクセスさせるための設定を少ない権限で実現するための方法について記しました。 この記事では、Cloud ConsoleによるGUIでの操作ではなく、Cloud Shellを利用して同様のアクセス制御をCLIで実現する方法について記述します。 検証の前提条件と準備 検証の前提条件と必要準備作業、検証パターンについてはこちらに記載していますのでまずはご参照ください。 Cloud Shellを利用して検証

    BigQueryの利用ユーザに個別のデータセットやテーブルへのアクセス制御をしてみた(Cloud Shell編) | DevelopersIO
    uokada
    uokada 2025/02/05
  • AWS マネジメントコンソールのマルチセッションサポートを試してみた | DevelopersIO

    AWSマネジメントコンソールで、1つのブラウザから最大5つの異なるIDで同時にサインイン可能になる「マルチセッションサポート」がサポートされました。 2025年1月10日、AWS マネジメントコンソールで、1つのウェブブラウザから 最大5つの異なるID(IAMユーザ)で、同時にサインイン可能となるマルチセッションサポートが利用可能になりました。 Signing in to multiple accounts 従来、AWS マネジメントコンソールで複数のアカウントにサインインするには、ブラウザのシークレットモードなどを利用する必要がありましたが、複数のアカウントを効率的に管理できるようになるマルチセッションサポートを試す機会がありましたので、紹介させていただきます。 マルチセッションサポートの有効化 AWS マネジメントコンソールの右上にあるアカウントメニューより、マルチセッションを有効にし

    AWS マネジメントコンソールのマルチセッションサポートを試してみた | DevelopersIO
  • Amazon S3 Tables と Iceberg Tables on Amazon S3 のパフォーマンス比較 #AWSreInvent | DevelopersIO

    AWS事業コンサルティング部の石川です。 この記事は AWS Analytics Advent Calendar 2024 の 22 日目の記事です。 Amazon S3 Tables は、「クエリパフォーマンスが最大 3 倍高速になり、1 秒あたりのトランザクション数が最大 10 倍」と言われています。日は、「Amazon S3 Tables vs Iceberg Tables on Amazon S3 」と題して、パフォーマンスを比較したいと思います。 どのようなクエリが速くなるのか 具体的にどのようなクエリが速くなるのかについて考察します。 セルフマネージドテーブルストレージと比較すると、クエリパフォーマンスが最大 3 倍高速になり、1 秒あたりのトランザクション数が最大 10 倍になる 引用: Amazon Web Services ブログ の Amazon S3 の新しいテ

    Amazon S3 Tables と Iceberg Tables on Amazon S3 のパフォーマンス比較 #AWSreInvent | DevelopersIO
  • boto3と1Passwordを使って、AWSのMFA認証とスイッチロールを自動化してみた! | DevelopersIO

    こんにちは!今回は、AWSMFA(Multi-Factor Authentication)認証を使い、IAMロールにスイッチしながらS3バケットにアクセスするPythonスクリプトを紹介します。このスクリプトは、AWSセキュリティベストプラクティスに従い、MFAを使用して一時的なセッションを取得し、S3バケットのリストを取得する方法を示しています。 さらに、1Passwordを活用してワンタイムパスワード(OTP)を自動的に取得する仕組みも組み込んでいるため、非常に便利で安全なアクセスが可能です。AWSセキュリティを強化したい方や、MFA認証を自動化したい方に役立つ内容になっています。 背景 AWSでは、セキュリティを強化するためにMFAを使用することが推奨されています。MFAを使用すると、ユーザーは通常の認証情報(アクセスキーやシークレットキー)に加えて、ワンタイムパスワード(OT

    boto3と1Passwordを使って、AWSのMFA認証とスイッチロールを自動化してみた! | DevelopersIO
  • 神奈川県立高校ネット出願システムのGmail到達性問題、改めて深堀りしてみた | DevelopersIO

    神奈川県ネット出願システムのGmailへのメール到達性問題は、不適切なサーバー設定、大量メール送信、DNSミス、バウンスメール処理不備、急激な送信量増加、準備不足、新ドメインの低信頼性が複合的に作用して発生したと推測されます。 2024年1月、神奈川県のネット出願システムでGmailにメールが届かないトラブルが発生しました。 身内が受験するため、出願システムのトラブルに巻き込まれた当事者として原因調査を試みていました。 先日『日経クロステック』より、件について取材を受ける機会がありました。 取材協力した記事で取り上げられた問題について、さらに深堀り、詳細な分析を行った内容を以下に紹介いたします。 問題の概要 概要 志願者登録時、二次元コード読み取りと空メール送信が必要 "@gmail.com"アドレスへの返信メールが届かない不具合発生 原因 システムのメールサーバ設定が不十分 大量メール

    神奈川県立高校ネット出願システムのGmail到達性問題、改めて深堀りしてみた | DevelopersIO
  • Snowflakeのロール階層設計ちゃんとしてますか? | DevelopersIO

    データ事業部の荒木です。 Snowflakeのロールを業務で運用していると、ロールの数が多くなったり、どのロールにどの権限がついているか分かりづらくなり管理が大変になったりすることあるかと思います。 実際に私も運用していく中で、Snowflakeのロールや権限は自由度が高くどういう設定をしたらいいのだろう。。と悩んでました。 公式ドキュメントにもロールの推奨構成について記載していますが、サンプル構成など具体的な構成で参考文献があまりなかったので、色々検討したSnowflakeのロール構成について紹介したいと思います。 Snowflakeロールについて まずSnowflakeのロールについて簡単に説明します。 ロールとは Snowflakeのロールは、「セキュリティ保護可能なオブジェクトに対する権限の付与や取り消しができるエンティティ」を意味しています。 要はSnowflake内に作成され

    Snowflakeのロール階層設計ちゃんとしてますか? | DevelopersIO
  • Amazon ECSのデプロイにecspressoを使うとビルド・デプロイの境界やアプリ・インフラのIaC境界が明確になる ~ fujiwara-ware OSS ~ | DevelopersIO

    クラスメソッドは2024年に5つのOSSに対して支援を実施しました 当方が推薦した @fujiwara さん作による Amazon ECSのデプロイツールである ecspressoが選定されたので、簡単に紹介します。 継続的デリバリーの責任範囲を明確にするecspresso ecspresso(「エスプレッソ」と発音します)はAWSのコンテナサービスAmazon ECSのデプロイツールです。 ECSでのデリバリーを思い出してみましょう。 ECSのデリバリーは、新しいコンテナイメージのビルドと、新しいコンテナイメージのデプロイの2つのフェーズに分かれている ECSのデプロイは、タスク定義を更新し、サービスの参照するタスク定義を更新すること 頻繁に更新されるアプリケーションに対して、VPCやALBといったインフラストラクチャの更新頻度は低く、この2つの更新のライフサイクルは大きく異なる 以上を

    Amazon ECSのデプロイにecspressoを使うとビルド・デプロイの境界やアプリ・インフラのIaC境界が明確になる ~ fujiwara-ware OSS ~ | DevelopersIO
  • Quarkus Sample – OpenID Connect でセキュアなエンドポイントを構築する | DevelopersIO

    はじめに 個人的に CloudNative なアプリケーションフレームワーク Quarkus のいろいろなモジュールを試しています。その中から今回は OpenID Connect クライアントモジュールを利用してみます。 QUARKUS - USING OPENID CONNECT TO PROTECT WEB APPLICATIONS USING AUTHORIZATION CODE FLOW 例では KeyCloak を利用していましたが、今回は Auth0 を利用しました。 事前準備 Quarkus ブランクプロジェクトの作成 Quarkus の最低限のブランクプロジェクトを作成します。追加の依存は何も指定しません。 Quarkus - Start coding with code.quarkus.io pom.xml の中は以下の通り。 <dependencies> <depend

    Quarkus Sample – OpenID Connect でセキュアなエンドポイントを構築する | DevelopersIO
    uokada
    uokada 2024/06/24
  • 2024年版「基本的なウェブアプリケーションを構築する」のチュートリアル手順まとめてみた[Amplify Gen2対応] | DevelopersIO

    初めてAWSのサーバレスサービスを学習するときに利用できる「基的なェブアプリケーションを構築する」の内容を2024年現在でも実行できる手順にしてみました こんにちは、臼田です。 みなさん、AWSのチュートリアル活用してますか?(挨拶 今回はAWSの初心者向けハンズオンコンテンツである基的なウェブアプリケーションを構築するを2024年の現在版の手順としてまとめてみました。 このコンテンツはAWSのサーバレスなサービスを利用して、簡単にウェブアプリケーションを作成する体験ができるチュートリアルとなっており、登場するAWSの各サービスを理解するのにちょうどよい内容でした。しかし、リリースされてしばらく経っているのもあり、特に今回のAmplify Gen2リリースもあってだいぶ画面や操作方法などが変わってしまいました。 実現できる事自体は変わらないので、現時点でこのチュートリアルを初心者でも完

    2024年版「基本的なウェブアプリケーションを構築する」のチュートリアル手順まとめてみた[Amplify Gen2対応] | DevelopersIO
  • [EC2] NVMe SSD ローカルストレージ搭載の M5d インスタンスが登場しました | DevelopersIO

    M5dインスタンスを起動してみた それでは、M5dインスタンスを起動してみます。 オレゴンリージョンを選択して、新規EC2インスタンスを起動しよとすると、M5dの各インスタンスタイプが選択可能になっています。 今回はm5d.largeを選択します。ストレージの設定では、「ephemeral0」が自動で割り当てされています。 ローカルストレージの利用 起動したインスタンスに接続して、ローカルストレージを設定し利用可能にします。以下、環境はAmazon Linux 2018.03.0 を使用しています。 何もせずに起動した状態では、まだマウントされていません。 $ df -h ファイルシス サイズ 使用 残り 使用% マウント位置 devtmpfs 3.8G 48K 3.8G 1% /dev tmpfs 3.8G 0 3.8G 0% /dev/shm /dev/nvme0n1p1 7.8G 1

    [EC2] NVMe SSD ローカルストレージ搭載の M5d インスタンスが登場しました | DevelopersIO
    uokada
    uokada 2024/06/11
  • 新たに追加されたAWS LambdaのログコントロールをAWS SAM CLIで試してみる | DevelopersIO

    初めに 昨日AWS Lambdaにログ形式やログレベルのコントロールといった指定が可能なアップデートが行われました。 機能については既に別の方が記事を書かれているため大枠としてはこちらをご参照ください。 日リリースされたAWS SAM CLIv1.103.0が既にこちらの機能に対応していたのでせっかくなのでSAMでも試してみます。 SAMテンプレート作成 今回新たにAWS::Serverless::Functionに追加されたLoggingConfigで設定可能です。 また今回のアップデートでsam initに--structured-loggingオプションが追加されておりこちらを指定することでログフォーマットデフォルトでJSON形式としたテンプレートが生成されるようになっております。 sam init実行時にこのオプションを付与したsam-app-structedプロジェクトと、この

    新たに追加されたAWS LambdaのログコントロールをAWS SAM CLIで試してみる | DevelopersIO