サクサク読めて、アプリ限定の機能も多数!
トップへ戻る
都知事選
dev.classmethod.jp
こんにちは、戸田です。 今回は React Router v6.4 以降を使用する際にどのルーティング方法を使えばいいのか自分の言葉でブログにまとめました。 まず結論 シンプルなルーティングのBrowserRouterかcreateBrowserRouterで迷ったら基本的にcreateBrowserRouterを使いましょう! 以下がサンプルコードです。 import React from 'react'; import { Outlet, RouterProvider, createBrowserRouter } from 'react-router-dom'; const Parent = () => { return ( <div> <h1>Parent</h1> <Outlet /> </div> ) } const App = () => { const router = cr
Jenkinsはゲーム開発の現場ではよく使われています。このあたり、ゲーム開発環境の事情が大きく絡んでいるようです。 こんにちは ゲームソリューション部の出村です。 みなさんはソフトウェア開発においてCI/CDツールは何を利用していますでしょうか? これまでゲーム開発の現場を見てきましたが、ゲーム開発においてよく使われるCI/CDツールはやはりJenkinsです。このJenkins、一昔前ではWeb開発をはじめとしてさまざまなソフトウェア開発でよく利用されていました。ただ、ここ最近はGitHub Actionsなど他のツールに置き換えられているという印象があります。 しかし、ことゲーム開発においてはGitHub Actionsといった他のCI/CDツールではなく、Jenkinsが利用されている場面が圧倒的に多いです。これは、他のCI/CDツールを利用したくないという消極的な理由ではなく、J
最小限で基礎的なセキュリティガイダンスである「AWS Startup Security Baseline (AWS SSB)」を紹介します いわさです。 SaaS on AWS では大きく 4 つのフェーズ(設計・構築・ローンチ・最適化)で役立てる事ができるコンテンツが提供されています。 設計フェーズでは技術面からコンプライアンスに準拠したりセキュリティベースラインを考える必要があります。 これらについてベストプラクティスが提案されている動画コンテンツがあります。 その中で初期段階で実施出来ることとして次のステップが紹介されていました。 セキュリティ周りは Well-Architected Framework や Security Hub の適用から始めることも多いと思いますが、様々な制約からすぐの導入が難しい場合もあります。 そんな方に本日は上記の中の AWS Startup Secur
概要 こんにちは、24年新卒のかつまたです。 この度1ヶ月半程の勉強期間を経てAWA SAAに合格したので、その際の用語集のようなものを公開してみたいと思います。学習方法や教材、基礎部分については、ネット上に先人の方々のレポートが多く存在するため省略させていただきます。
[JAWS ミート 2024] 『踏み台の運用が変わる? VPC 上で起動できるようになった CloudShell を語る』というタイトルで登壇しました。#jawsmt #jawsug こんにちは、AWS 事業本部の平木です! 本日、愛知県豊橋市の BASE CAMP KITI にて開催された JAWS-UG 東海道主催の JAWS ミート 2024 にて、「踏み台の運用が変わる? VPC 上で起動できるようになった CloudShell を語る」というタイトルで登壇したため登壇資料を公開します。 登壇資料 登壇内容 イントロダクション 皆さんは踏み台サーバを運用していますか? 踏み台サーバを運用しようと思うといくつか悩みの種が出てきます。 少し RDS へ接続したいだけの踏み台サーバなのに EC2 を停止しても EBS の料金が発生してしまう 踏み台サーバの分、脆弱性対策の対象が増えてし
#include<stdio.h> #include<stdlib.h> struct PointerLimit{ struct PointerLimit* next; int value; } typedef PointerLimit; PointerLimit* getTail(PointerLimit* base){ while(base->next != NULL){ base = base->next; } return base; } PointerLimit* add(PointerLimit* base, int value){ PointerLimit* new = (PointerLimit*)malloc(sizeof(PointerLimit)); new->value = value; new->next = NULL; PointerLimit* tail =
はじめに 複数の質問に対するAmazon Bedrock Claudeの各回答の精度を一括評価するAWS Lambdaを作成してみました。 前回の記事では、Amazon Connect、Amazon Bedrock、およびAmazon Lexを統合し、生成AIを用いて電話での問い合わせ内容を種別判定し、最適な担当者に振り分けるシステムの構築方法と、その精度評価について解説しました。 構成や処理の流れの詳細 構成としては、下記の通りです。 Connectフロー内の構成は下記の通りです。 以下は、ユーザーがお問い合わせした内容を種別判定し、内容によって担当者に振り分けするまでのフローです。 電話でユーザーがお問い合わせ内容を伝えます。 ユーザーからお問い合わせ内容をLexで受け取ります。インテントは、FallbackIntentを呼びます。 受け取った内容をBedrockのClaudeに渡し、
AWS IAM Access AnalyzerをSecurity Hubに統合時、各検出結果のタイプごとのSeverity(重要度)を教えてください わからないこと AWS IAM Access AnalyzerをSecurity Hubに統合し、EventBridgeで通知を設定する際、Severity(重要度)でフィルタリングしたいと考えています。 そこで、検出結果のタイプごとの重要度について教えてください。 回答 公式ドキュメントには、検出結果のタイプごとの重要度は記載されていません。 IAM Access Analyzerの検出結果は、Security Hubに送信される際、以下の6つのカテゴリのいずれかに分類されます。 外部アクセス検出 Effects/Data Exposure/External Access Granted タイトル:[リソースARN]はパブリックアクセスを許
Terraformのversion 1.9が2024年の6月26日にGAになりました。1.9の新機能を見ていきましょう。 変数のvalidationで色々参照できるようになった 変数にはvalidationを実装することができます。例えば以下のようなものです。 variable "aws_account_id" { type = string description = "AWS Account ID" validation { condition = can(regex("^[0-9]{12}$", var.aws_account_id)) error_message = "Invalid AWS accountID." } } これはAWSアカウントIDが格納されるのを想定した変数です。AWSアカウントIDは必ず12桁の数字ですので、そうでない場合はエラーにしています。 上記例では c
はじめに AWS WAFのログ出力先として、以下の3つの選択肢があります。それぞれのメリット、デメリット、およびユースケースは以下の通りです。 Amazon CloudWatch Logs 主なユースケース リアルタイムでのログ監視やアラート設定が必要な場合 短期間のログデータの保存と分析が主な目的の場合 ログの中身を迅速に確認したい場合 考慮点 コスト: 大量のログデータを長期間保存すると、S3バケットに比べてコストがかさみます。 Amazon S3 主なユースケース データアーカイブ用など、長期間のログデータ保存が必要な場合 コストを抑えたい場合 データレイクとして利用したい場合 考慮点 分析の手間: ログデータを分析するためには、Amazon Athenaなどの別サービスが必要です。 リアルタイム性の欠如: リアルタイムでのログ監視やアラート設定には向いていません。 WAFのログは、
プロジェクトマネジメント未経験の方も今日から参考にできるTipsをシェア。 ゼロから始めるプロジェクトマネジメントシリーズ第十二回です。 プロジェクトで新規要件が発生した際には瞬間的に考えた見積を3倍して、その要件を請けるかどうか判断しましょう。 情報システム室の進地@日比谷です。 プロジェクト進行中に新しい要求、要件が発生する。よくあることです。そして、それほど重い要求、要件ではないと感じた貴方は直感で導いた工数で対応の可否を判断しようとする。これもよくあることです。 しかし、これはとてもx2危険なことです。 新規要件を即答して請けてはいけない理由 新規要件を即答して請けてはいけない理由はいくつかあります。 新規要件を出す側の心理的ハードルが下がり、新規要件が噴出しやすくなるから 直感で出した工数の確かさはかなり疑わしいから あなたは大きなステップを見落としているから、確実に すぐに出来
こんにちは、森田です。 以下のアップデートで Amazon EventBridge でメトリクスデータを素早く確認できるダッシュボードが提供されるようになりました。 本記事では、ダッシュボードでどのようなメトリクスを確認できるかをみていきます。 やってみる 本記事では、東京リージョンで確認を行いました。 東京リージョンのダッシュボードを確認する場合は、以下のリンクから可能です。 https://ap-northeast-1.console.aws.amazon.com/events/home?region=ap-northeast-1#/dashboard 以下のような画面が開きます。 リソース数の確認 上部のタブにてリージョン内(アカウント全体ではない)のリソース数を確認することができます。 各リソースのメトリクスの確認 以下のタブを切り替えることで、各リソースにおけるメトリクスを確認す
検証 まずはネットワークインターフェイスとプライベートIPアドレスが1つずつの状態を確認していきます。 # ip a 1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000 link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00 inet 127.0.0.1/8 scope host lo valid_lft forever preferred_lft forever inet6 ::1/128 scope host valid_lft forever preferred_lft forever 2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 9001 qdisc m
AWS認定トレーニング講師の平野@おんせん県おおいたです。 Amazon Bedrock 生成AIアプリ開発入門を読み終えてブログ書こうと思ったのですが、すでに2件投稿されていましたw こんな状況なので書くの諦めようと思ったのですが、 と言われてしまったので、何か別の視点で簡単にまとめてみたいと思います。 (本の詳細は上記のブログをご覧ください) 待ちに待ったリリース まずこちらの本、予約が始まったのが4月でした。私もすぐに予約しました。 そして、発売直前には(まだ発売されていないのに)ランキング1位になってました。 本の中身を確認せずに予約する私のような人間が世の中にたくさんいることに、連帯感を覚えましたw こんな期待値MAXの状態で発売されたのが Amazon Bedrock 生成AIアプリ開発入門 となります。 期待値をこえたのか? ここまで期待値が上がると、実物を手にしてがっかり、
[アップデート]Amazon CloudWatch Application SignalsがGAしました!CDKでサンプル作ってみた Amazon CloudWatch Application SignalsがGAしました!Application Signalsを試しに使うための環境をCDKで作り、実際にSLO/SLIを設定してみます。 はじめに 先日AWS上でSLO/SLI設定を比較的簡単に実現できるAmazon CloudWatch Application SignalsがGAしました!GA前からAWS上ではAPMがどう実現可能なのか、何が違うのかという記事はいくつかありました。 本稿ではApplication Signalsの簡単な概要と提供環境/言語/リージョンについての紹介に合わせて、実際にサンプルを作ってどんな動作をするのか確認してみます。実際に0から構築することで何が必要なの
はじめに リテールアプリ共創部のるおんです。 みなさんはプロジェクトを始める時や、既存プロジェクトでNode.jsのバージョンをあげたい時にどのような基準で使用するバージョンを決めてますか? 実際に、自分も定期的なライブラリアップデートの際や、新しくLambda関数を作ってNode.jsを選択する際にどのバージョンを使うべきか迷う時があります。 そんな時、Node.jsのリリースサイクルを理解しておけば、今自分たちが作っているアプリケーションにあったバージョンを正しく指定することができます。 今回は、Node.jsのリリースサイクルを解説し、適切なメジャーバージョンを指定する方法について解説します。 リリースサイクル メジャーバージョン まず、Node.jsのメジャーバージョンでは偶数番号と奇数番号で役割が異なります。 我々開発者が本番環境で基本的に使用するバージョンはNode.js v1
こんにちは。ゲームソリューション部の出村です。 ここでは、世間で流通しているサーバー向けCPUと一般PC向けのCPUの違いを解説します。 さて、みなさんは同じCPUベンダーであっても、違うブランド名でCPUが販売されているというのはご存じでしょうか? ここでは米AMD社が販売しているCPUを取り上げてみます。米AMD社が販売しているCPUブランドとしては、EPYC(エピックと読みます)シリーズとRyzen(ライゼンと読みます)シリーズの2つがあります。これらの違いについて解説します。 EPYCとRyzen 秋葉原のPCショップなどで販売されているAMD社のCPUはほぼすべてがRyzenシリーズです。いっぽう、EC2などサーバーに搭載されているCPUはEPYCシリーズです。それからも分かる通り、サーバーにはEPYCが採用されますし、家庭用PCにはRyzenが搭載される事が一般的です。 ちなみ
Slackに新機能のリストが追加されました。事前予告ではプロジェクトとなっていた機能です。 勿論単なるToDo管理機能ではなく、Slackの既存機能と絡めることで是迄はAPI等を使う必要があったシーンを手軽にSlackだけで完結させることができます。ワークフローとの組み合わせを例にして、実際の利用方法について記事としました。 使い方 「その他」から選択しましょう。 利用する数だけカラムを追加し、それぞれに型を指定します。 型にURLはありませんが、テキスト型にした上で入力したテキストに対してURL指定は可能です。 ステート管理を行う場合はステート毎にリストを作成します。ステートを移行させたい場合にはリストに追加したアイテムの所属リストを変更します。 他のメンバーと利用する場合は右上の「共有」から設定を変更します。リストとして共有する場合は「一般」から変更を入れます。 ワークフローのフォーム
最近「ベクトル検索」や「ベクトルデータベース」というキーワードをよく耳にするようになりました。 「ベクトル検索」は生成AIのRAG(Retrieval-Augmented Generation)のコンテキストで使われることが多いですが、セマンティック検索や推薦システムなど、ベクトル検索は身近なところで以前から幅広く使われています。 2024/6/28(金)のDevelopersIO 2024 FUKUOKA Day1では、ベクトル検索はRAGだけでなく、広い意味の類似検索で応用されてきたこと、また、リレーショナルデータベースはSQLがインターフェースとなるように、ベクトル検索は埋め込みモデルがインターフェースとなることなどでについて15分で発表しました。 登壇内容を簡単に共有します。 登壇資料 実は身近なベクトル検索 ベクトル検索というと、最近では生成AIを拡張するRAGと一緒に耳にする機
Google Cloudデータエンジニアのはんざわです。 今回はSQLのWHERE句でのNULLの扱いについて、具体的な例とその原因を交えて紹介したいと思います。 また、本ブログでは使い慣れているBigQueryとネイティブにサポートしているGoogleSQLを使用しますが、他のデータベースやSQLでも同様の挙動をするので、ぜひ参考にしてみてください。 結論 WHERE句で特定の値でフィルタリングする際にNULL値を適切に処理しないと意図しない欠損が発生する恐れがあります。 特にDWHの場合、意図しない欠損は、データ分析やレポートの精度に影響を与える可能性がありますので適切な処理を検討してください。 意図しない欠損 例として、次のクエリでは、idが1以外のレコードを取得しようとしていますが、NULLも弾かれてしまいます。 WITH sample_table AS ( SELECT _arr
AWS Well-Architected Framework がアップデート(2024年6月27日)されたので変更点を Well-Architected Tool で比較してみた いわさです。 定期的にアップデートされる AWS Well-Architected Framework ですが、今朝直近のアップデートのアナウンスがされました。 前回変更されたのは 2023 年 10 月 3 日です。今回のアップデートは 2024 年 6 月 27 日版となります。 アナウンスによると、変更点として次のように記載されています。 The Framework updates provide more recommendations for AWS services, observability, generative AI, and operating models. We also refresh
Snyk Containerでは、イメージに対してだけではなく、Dockerfileに対してもスキャンが可能です。 Scan your Dockerfile | Snyk User Docs コンテナをBuild・Pushをする前にスキャンができるため、より早い段階で脆弱性を検知できます。 今回は、Snyk ContainerのDockerfileのスキャンを試してみました。 やってみた Dockerfileを含んだリポジトリの用意 Snykのデモ用のリポジトリをフォークして使います。リポジトリは以下です。 snyk-japan/juice-shop: OWASP Juice Shop: Probably the most modern and sophisticated insecure web application ちなみに、Snyk Code & Open Sourceを試してみた
はじめに Amazon ConnectからAWS Lambdaを呼出し、SMS送信する方法を紹介します。 発信元の電話番号がSMS送信可能な番号であれば送信し、その番号がSMS送信できない場合は、手動でSMS送信先の電話番号を入力してもらう仕組みを実装しました。 前提条件 Amazon SNS で SMS送信できること。必要に応じてサンドボックス解除の申請や使用限度額の引き上げを行ってください。 https://dev.classmethod.jp/articles/amazon-sns-sms-sandbox/ Amazon Connectインスタンスを作成済みであること Lambda 関数作成 SMS送信用のLambda 関数を作成します。 SMS送信を許可するIAMポリシーを作成し、Lambda関数のIAMロールに適用します。 ポリシーは以下の通りです。 { "Version": "
こんにちは。サービス開発室の武田です。 AWSを利用しているとさまざまなところで「日付時刻データ」を目にします。AWSの各サービスで提供されている日付時刻データは次のいずれかのフォーマットです。 ISO 8601 UNIX時間 ISO 8601は日付・時刻を表記するための国際規格です。日付 T 時刻 タイムゾーンが並べられた文字列です。基本形式と拡張形式が定義されていますが、AWSでは拡張形式が一般的かと思われます。 基本形式: 20240627T000000Z 拡張形式: 2024-06-27T00:00:00Z 末尾のZはタイムゾーンでZはUTCを表します。日本時間の場合は+09:00などが代わりに付きます。 ISO 8601は文字列による表現でしたが、UNIX時間は数値による表現です。UNIX時間はエポック秒とも呼ばれ、 UTCでの 1970年1月1日午前0時0分0秒 からの経過秒数
先日ブラウザ互換の JS ライブラリである「Polyfill」にマルウェアが混入されて大きな問題となっていますが、Cloudflare であれば対応がワンクリックで実施できます。 ウィスキー、シガー、パイプをこよなく愛する大栗です。 先日ブラウザ互換の JS ライブラリである、「Polyfill.io」にマルウェアが混入されて大きな問題となっています。Cloudflare では、簡単に対策を行えるための機能がリリースされたのでご紹介します。Polyfill の対応がワンクリックで行えます。 JavaScriptライブラリ「Polyfill.io」にマルウェアが混入され10万以上のサイトに影響 Polyfill について Polyfill はブラウザ間のバージョンの違いなどを無効にするためのライブラリですが、今年の2月に売却されていることが発覚していました。 Cloudflare では、Po
Knowledge bases for Amazon Bedrockのプロンプトテンプレートとチャンク数を調整し、電話での問い合わせから種別判定の精度とレスポンス速度を改善する はじめに 以前の記事では、Amazon Connect、Knowledge bases for Amazon Bedrock、およびAmazon Lexを組み合わせて、電話での問い合わせ内容を種別判定し、最適な担当者に振り分ける方法とその精度結果について解説しました。 構成は以下の通りです。 Amazon Connectのフロー内の構成は以下の通りです。 以下は、ユーザーのお問い合わせ内容を種別判定し、その内容に応じて適切な担当者に振り分けるまでのフローです。 電話でユーザーがお問い合わせ内容を伝えます。 ユーザーからお問い合わせ内容をLexで受け取ります。インテントは、FallbackIntentを呼びます。 受
AWS Summit Japan 2024の弊社クラスメソッドのパートナーセッションにて、弊社が長年ご支援させていただいている京セラ株式会社のロボティクス事業部の巽様にご登壇いただきました。セッション内容をレポートします。 セッション概要 労働力不足の現場を救う!「京セラロボティックサービス」を支えるクラウド基盤の開発ストーリー 京セラ株式会社では協働ロボットを AI で知能化するクラウドサービス「京セラロボティックサービス」を開発し、昨 2023 年 11 ⽉にローンチしました。本サービスではロボットをクラウドに接続することで、段取り替え作業の短縮や作業品質の維持/改善、リモートサポートなどを実現しています。また、ロボットへの接続、及び、お客様の現場環境データをお預かりすることから、AWS Organizations などのサービスを⽤いて複数アカウントの統合管理を⾏い、セキュリティとプ
手間をかけずにCloudFrontを使った静的Webサイトを作りたい こんにちは、のんピ(@non____97)です。 皆さんは手間をかけずにCloudFrontを使った静的Webサイトを作りたいなと思ったことはありますか? 私はあります。 過去にAWS CDKを使ってこの思いを実現したことがありますが、一からAWS CDKを作り込むのはなかなか大変でした。 そんな苦労はCloudFront Hosting Toolkitを使用すると少し解消されるかもしれません。 CloudFront Hosting ToolkitはCLIまたはAWS CDKでフロントエンドのホスティングとCI/CDパイプラインを用意するツールです。 今だとAmplifyを使えば良いのではないか? という声も聞こえてきますが、細かいカスタマイズを行いたい場合にCloudFront周りを直接操作したい場合があります。そうい
はじめに Amazon Lexでチャットボットを実装する場合、ユーザーから以下のようにキャンセルや終了などを聞き取る機会があります。 注文の取り消し チャットボットとの会話の中断 進行中の操作の中止 Lexでは、組み込みインテントという、一般的なアクションに対して、AWS側で用意されている組み込みインテントライブラリが利用できます。 組み込みインテントの場合、インテントのトリガーとなるサンプル発話やスロットは、AWS側で設定されており、開発者側で追加や変更はできません。 組み込みインテントのうちAMAZON.CancelIntentは、ユーザーが現在の対話をキャンセルしたいことを示す以下のような単語やフレーズに応答します。 キャンセル 取り消し やめて 忘れて 今回は、AMAZON.CancelIntentが日本語でどこまで認識するか試してみました。 https://docs.aws.am
次のページ
このページを最初にブックマークしてみませんか?
『Developers.IO』の新着エントリーを見る
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く