サクサク読めて、アプリ限定の機能も多数!
トップへ戻る
掃除・片付け
dev.classmethod.jp
こんにちわ。組織開発がミッションの人事グループ・組織開発室に所属しているてぃーびーです。 仕事においてステップアップをしていくためには新しい知識やスキルを身に着けていく必要があります。 そして、新しい知識やスキルを習得する最善の方法は実践を通して経験をすることです。 個人が経験を通して学習するサイクルについて「コルブの経験学習」の概念があります。
CDK の中で DB を初期化する点についても後ほど触れます。 S3 にサンプルデータをアップロードする 続いて、以下のコマンドで S3 にサンプルのデータを入れます。 bucket_name=$(aws cloudformation describe-stacks --stack-name BlogAthenaJoinS3AndMysqlStack --output text --query 'Stacks[0].Outputs[?OutputKey==`BucketName`].OutputValue') aws s3 cp ./s3_test_data/data "s3://${bucket_name}/data" --recursive これで CloudFormation で作成した S3 バケット名を取得し、そのバケットに以下の CSV ファイルをアップロードしました。 ※4都
Cloudflare AI Gatewayを利用して、Amazon Bedrockを使ったAPIの利用状況の可視化、分析、ロギングできるか試してみた どうも!オペレーション部の西村祐二です。 以前、Hono + Cloudflare Workers + AWS SDK for JavaScript v3 + Amazon Bedrockの構成でAIモデルの動作確認用のAPIを作りました。 Hono + Cloudflare Workers + AWS SDK for JavaScript v3の構成でAmazon Bedrockが利用できるか試してみた | DevelopersIO 今回このAPIに対して、AIアプリケーションの利用状況を可視化、分析、キャッシュ、生成された回答のロギングなどの環境を提供するCloudflare AI Gatewayを試してみたいと思います。 Cloudfl
Hono + Cloudflare Workers + AWS SDK for JavaScript v3の構成でAmazon Bedrockが利用できるか試してみた どうも!オペレーション部の西村祐二です。 APIを作るときにHono + Cloudflare Workersの構成は開発体験もよく、この構成で検証をおこなっております。 AWSの環境もよく利用しており、AWSのサービスと連携するためにはSDKの利用がほぼ必須になってます。 最近、AIのサービスも利用する機会もあるので、Hono + Cloudflare Workers + AWS SDK for JavaScript v3の構成でAmazon Bedrockが利用できるか試してみました。 その手順などを備忘録のためにまとめておきたいと思います。 環境 Hono: 4.3.4 AWS SDK for JavaScript v
このブログ記事では、Cognitoを使ってLaravelでシンプルな認証機能を実装する方法を紹介します。 目的 クラスメソッドタイランドの清水です。 本記事では Cognito を使って Laravel で簡単な認証機能を実装します。 認証のシーケンスは以下のようになります。 また、全体の流れを理解するために Laravel のロジックは非常に簡潔になっているので、本番環境で注意が必要な部分は ⚠️ でコメントを書いています。 前提条件・知識 AWS アカウントを作成済み IAM Role, Policy, Cloud9 の環境を作成できる権限がある 使いたいAWS アカウントのリージョンで cdk bootstrap コマンドを実行済み ローカル PC に docker, docker-compose をインストール済み 手順 まずは CDK を実行するための環境を Cloud9 で準備
こんにちは!AWS事業本部のおつまみです。 みなさん、rootユーザーでしかできない操作を知りたいと思ったことはありますか?私はあります。 rootユーザーとは、AWSアカウントを作成した際に自動的に付与される最も権限の高いユーザーアカウントのことです。 rootユーザーには特別な権限があり、一般ユーザーアカウント(IAMユーザー)ではできない操作が可能です。 しかし、rootユーザーだと非常に強い権限を持っているので、基本的にAWSを利用する際はIAMユーザーを利用することがベストプラクティスとされています。 AWS アカウントのルートユーザーのベストプラクティス - AWS Identity and Access Management rootユーザーの認証情報が必要なタスクがある場合を除き、AWS アカウントのrootユーザーにはアクセスしないことを強くお勧めします。 また弊社AWS
Amazon RedshiftはZero-ETL統合のMulti-AZデプロイメント、Amazon Athenaのフェデレーテッドクエリパススルー機能、Amazon QuickSightのAWS PrivateLinkのサポートとIAMアイデンティティセンターのアカウントインスタンスを新たに統合など。 はじめに クラスメソッドの石川です。日々AWSのアナリティクス関連サービスのアップデートとそのブログをご紹介します。 今月は、Amazon RedshiftはZero-ETL統合のMulti-AZデプロイメントで高可用性を実現し、ダウンタイムなしの分析を可能に。Amazon Athenaのフェデレーテッドのクエリパススルー機能で、BigQueryやSnowflakeなどの外部データソースへの直接アクセスが可能になり、データ処理の効率が飛躍的に向上。さらに、Amazon QuickSightは
[VS Code]タブのカスタムラベル設定でpage.tsx、layout.tsxなどのファイルを見やすくする どうも!オペレーション部の西村祐二です。 最近、Next.jsなどでフロントエンドの実装も行うことが増えてきました。 実装を進めていくと、page.tsx,layout.tsx,index.tsx,route.tsなど同名のファイルが増えてきて、どのファイルを開いているか分かりづらいなと思う場面がありました。 VS Codeのv1.88で開いているファイルタブのラベルをカスタマイズできるようになったので、その設定方法を紹介したいと思います。 Visual Studio Code March 2024 結論 最初に結論として、settings.jsonに下記設定をすることでディレクトリ名も表示されるようになりタブを見やすくすることができます。 .vscode/settings.js
はじめに マルチアカウント構成において、アカウント発行後にCloudFormationを使ってアカウントのベースライン(セキュリティ、ネットワーク、ログ等)を構築することがよくあります。 その際、AWSサービスごとに1つのロググループをベースラインで作成するか、メンバーアカウント側で必要に応じてロググループを作成するかを検討する必要があります。 1つのロググループに複数のリソースのログを集約する方法と、リソースごとにロググループを作成する方法には、それぞれメリットとデメリットがあります。 1つのロググループを集約する メリット 管理するリソースが減る 手動で作成する手間が減る ログをクエリする際、関連するログが1つのロググループにまとめられていると効率的になることがある デメリット 1秒間のログイベント書き込みには制限があるため、エラーになる可能性がある 各リソースごとに識別できるログスト
DigiCertの記載不良のあるEV証明書の失効措置が2024年5月12日に予定されているとの告知を受け、ChromeとOpenSSLを利用したEV証明書の記載不備の判定を試みてみました。 2024年5月8日、デジタル証明書の大手ベンダー Digicert社 より、表記誤りのあるEV証明書の報告と、その失効措置が2024年5月12日に予定されている旨の案内がありました。 2023年 9月から同年12月中旬までに発行しているEV TLS/SSL証明書のうち、Subjectに記載のBusiness Category フィールド(subject:businessCategory)の表記に誤りがある証明書が失効の対象となります。 当該フィールドは以下のどれがの値を含む必要がございますが、これらについては大文字小文字が以下の表記のままである必要があります。 Private Organization
こんにちは、臼田です。 みなさん、AWSの最新情報はキャッチアップできていますか?(挨拶 社内で行っているAWSトレンドチェック勉強会の資料をブログにしました。 AWSトレンドチェック勉強会とは、「日々たくさん出るAWSの最新情報とかをブログでキャッチアップして、みんなでトレンディになろう」をテーマに実施している社内勉強会です。 このブログサイトであるDevelopersIOには日々ありとあらゆるブログが投稿されますが、その中でもAWSのアップデートを中心に私の独断と偏見で面白いと思ったもの(あと自分のブログの宣伝)をピックアップして、だいたい月1で簡単に紹介しています。 4月は68本ピックアップしました。引き続きAmazon QやBedRockのアップデートがたくさんありますので注目です。 ちなみにAWSの最新情報をキャッチアップするだけなら週刊AWSがおすすめですが、Developer
このように攻撃する側では色んな手段を用いて行ってきますが、痕跡や兆候を検知するには何を見たら良いでしょう。 当然、認証ログを見ることと、アカウント奪取の試みの痕跡の可能性となる認証失敗のイベントに注目することが最初のキーポイントになるかと思います。 これらの認証情報の窃取を狙った攻撃に対して、ログから検知・分析する方法を紹介していきます。 どのログを見るか まず認証ログとは何を指すかというところですが、Windowsのローカル認証で言えばWindows Event Logのセキュリティログ、Linuxの認証の場合はSecureログ/Authログ、ドメイン認証であればActive Directoryのログ、IdPに認証を委任していればIdPのログ、SaaSで認証していればSaaSのログといったように、認証するシステムのログを取得することが必要です。 ログの何を見るか 次にログの何を見るかとい
どうも!オペレーション部の西村祐二です。 Python、TypeScriptなどいろんな言語でプログラミングしていると、関数名や変数名などをキャメルケース、スネークケースに変更したい、大文字に変換したい場面がちょくちょくあります。 今まではchange-caseという文字列を変換してくれる拡張機能を導入してましたが、VS Codeデフォルトの機能でも変換できることを知ったので紹介したいと思います。 環境 VS Code: 1.89 変換方法 文字列を選択し、「cmd + shift + p」などでコマンドパレットを開きます。 検索窓に「transform」と入力します。 変換したい形式を選択します。 下記ではサンプルとしてケバブケースに変換してます。 対応形式 バージョン1.89現在、下記に対応してます。 キャメルケースに変換 スネークケースに変換 ケバブケースに変換 パスカルケースに変換
いわさです。 以前からプレビュー中だった、AWS Amplify Gen 2 がついに GA となりました。 遂にというか個人的には思っていたより早かったです。 Amplify Gen 2 は従来の CLI ベースではなく CDK ベースとし、コードファーストでの開発に重きを置いています。 Amplify Gen 2 自体の記事は DevelopersIO 内にもいくつか存在しており改めて本記事では触れませんのでこちらのブログなどもご覧ください。 また、以下のページでは Gen 2 への移行ツールが開発中である点に言及されており、その上で Gen 1 と Gen 2 でサポートされる機能がまとめられていますので、すでに Amplify Gen 1 利用中のユーザーの方はこちらも参考にしてください。 以前は「近日公開予定」だった機能 実は 2024 年 2 月ごろに、私も少し Amplify
Amazon Connect フローでの放棄呼と離脱箇所を、Step Functionsを利用しローコードでDynamoDBに保存してみた はじめに Amazon Connectのフローで離脱箇所や放棄呼をAmazon Kinesis Data Streams(以降、KDS)とStep Functionsを用いて取得し、Amazon DynamoDBに保存する方法をまとめました。 本記事の内容は以下のような用途に役立ちます。 IVRでの途中離脱箇所を知りたい オペレーターにつながる前に切られる放棄呼の有無を知りたい Connectは、各通話ごとに問い合わせレコード(Contact Trace Record, CTR)として通話記録を保存します。 Connectでは、KDSに問い合わせレコードを出力できます。通常は問い合わせレコードは、どのフローで切断されたか情報はありませんが、フロー内で工
小ネタです。 2024年05月03日付けのLooker Studioリリースノートにて、Looker Studioでチャートに直接タイトルを追加できるようになりました。タイトルのフォント、色、サイズ、スタイル、位置はプロパティパネルのスタイルタブのタイトルセクションでカスタマイズできるようになります。 Looker Studio release notes | Google Cloud 当エントリでは簡単ではありますがこの内容について紹介していきたいと思います。 Learn more about adding and styling titles for charts. 目次 これまでの対処方法(Before) これからの対処方法(After) まとめ これまでの対処方法(Before) いきなりですがこちらのダッシュボード。これは社内限定で公開しているブログ投稿本数に関する年月単位で
2024年04月25日付けのLooker Studioリリースノートにて、新しいグラフ形式「タイムラインチャート」が利用可能になったのと合わせて『Googleスプレッドシート内で直接Looker Studioレポートを作成することができるようになった』という新機能もアナウンスされていました。 当エントリではこの機能(機能というかメニュー展開)に関して内容を紹介したいと思います。 目次 概要 実践 考慮事項 データソースのアップデート 情報やデータの在り方 まとめ 概要 当エントリで紹介する内容については、ざっくり言えば『機能が追加された』というよりは『機能をよりスムーズに使いこなせるようにメニュー構成が便利になった』というものになります。 従来の構成であれば、下記エントリで紹介したように『Googleスプレッドシートでデータを用意する』『Looker Studio側でデータソースを取り込む
先日2024年04月25日に更新されたLooker Studioのリリースノートにて、新しい可視化オプション「タイムラインチャート」が利用出来る旨がアナウンスされていました。 タイムラインチャートを使うと、イベントグループ間の関係を視覚化し、これらのイベントが起こったタイムスパンを比較することができるようになります。 当エントリではこの「タイムライン」チャートについて、必要な要件を確認し、実践データを使って可視化してみるところまでを紹介したいと思います。 目次 必要条件 Looker Studio: タイムラインチャート実践 まとめ 必要条件 タイムラインチャート作成には以下の情報が必要です。 行ラベル:各行のラベル文字。文字列型のディメンションとして指定。 開始日: タイムラインの開始日付。日付型のディメンションとして指定。 終了日: タイムラインの終了日付。日付型のディメンションとして
[アップデート] Knowledge bases for Amazon Bedrock が東京リージョンでサポートされました Knowledge bases for Amazon Bedrock が東京リージョンでサポートされました。東京リージョンの現状のおさらいと、リージョン(モデル)を使い分けて回答を生成してみました。 こんにちは! AWS 事業本部コンサルティング部のたかくに(@takakuni_)です。 ついに、 Knowledge bases for Amazon Bedrock が東京リージョンでサポートされました。 ドキュメントにも Knowlege base の列に Yes と記載されていますね。 Supported AWS Regions - Amazon Bedrock そこで今回は、東京リージョンでナレッジベースを作成してみたいと思います。 東京リージョンをおさらいす
[アップデート] Amazon DynamoDB のオンデマンドキャパシティモードで最大スループットを指定出来るようになったので、YCSB で DynamoDB の負荷テストしてみた いわさです。 DynamoDB にはキャパシティモードの概念がありまして、あらかじめ予測したキャパシティを事前割り当てしておくプロビジョンドモードか、実際に発生したリクエストに応じて請求してくれて良いのでうまいことやってくれやというオンデマンドモードの 2 つがあります。 どちらも一長一短あるのですが後者のオンデマンドの場合は柔軟性がある一方で、ワークロードの負荷によってはコストが予測しずらかったり、あるいは DynamoDB のイベントに応じてサービス間を連携しているような場合にオンデマンドだと外部サービスに予測できない負荷が発生することがありえます。 そんなオンデマンドキャパシティモードですが、本日のアッ
上の写真は僕が作ったIoT水やり装置です。土壌水分量をセンサーで測って、乾いてきたら水をあげてくれます。 ↓のM5Stack Watering UnitとM5Stackを買えば割と簡単に作れます! コードは全部ここにあるので興味がある方は見てみてください。 今日はその話ではなく、、、 「それ」、うちにも欲しいです 妻に作成したものを見せたところ、「自動で水やり!それいいね!庭にも同じの作ってよ!」と。 首都圏郊外にある我が家には日当たりの良い庭があり、妻は季節ごとに花や野菜を植えて、我が家の外観とそして食卓に彩りを添えてくれます。 しかし日当たりが良すぎるあまり、夏場の水やりはまぁまぁ過酷な労働です。 加えて、夏には恐るべき吸血生物が無数に飛び回っています。 水やりが自動化されたら嬉しい。たしかにそうだ。 でもなぁ。。。 非機能要件が全く異なる 実現したい機能は同じ「自動で水やりしたい」だ
はじめに テクニカルサポートの 片方 です。 前回のブログで執筆数が 200 本を越えました。199 本目、200 本目 のブログに引き続き Lambda 関数を利用した内容を紹介します。 こちらは、私の所属するテクニカルサポートチームへ「〇〇〇 を実現するサービスや機能はないか」と実際にお客様より頂いたお問い合わせを参考 (ヒント) にしてカスタムソリューションを作成してみました。 本ブログでは、マネージドノードに表示されている SSM Agent の Ping ステータスを監視する仕組みを EventBridge + Lambda 関数 + SNS を使って実装してみました。 構成と説明 SSM エージェントのステータスを毎分ポーリングする Lambda 関数を作成します。それをメトリクスとして取得して CloudWatch に送信します。 上記で作成した SSM エージェントのメトリ
WorkflowsからDataformの起動方法を検証してみました。Dataformタグ指定、コンパイル変数のWorkflowsからの上書きができるか、もあわせて検証してみました。 データアナリティクス事業本部の根本です。Dataformを使っていて、呼び出しもと(Workflowsとか)から動的に値を変えてDataformを呼び出すことができたらいいなと思い調べてみたらコンパイル変数を用いたらできたので記事にしてみました。 この記事の対象者 Dataformでコンパイル変数を使ってみたいひと 前提条件 Dataformのワークスペースやリポジトリが存在する、使えること 検証の全体像 コンパイル変数をdataform.jsonで指定して動作するか確認 APIでDataformを実行するときにコンパイル変数の値を上書きして動作するか確認 上記2つの検証をしていきます。 やってみる それでは早
Amazon MemoryDBではトランザクションログサービスへの耐久性のオフロード、スナップショット用にephemeralクラスタを作成、形式手法(TLA+)で一貫性の検証などが活躍しています Amazon MemoryDB for RedisはAWSが2021年から提供するRedis互換でありながら高速なパフォーマンスと耐久性を兼ね備えたエンタープライズなインメモリデータベースです。このAmazon MemoryDBの仕組みについて説明した論文が、2024年6月にチリ・サンティアゴで開催される国際的なデータベース学会の「SIGMOD/PODS 2024」で採択されました。 The 2024 ACM SIGMOD/PODS Conference: Santiago, Chile - Welcome Amazon MemoryDB: A fast and durable memory-fi
はじめに Amazon DynamoDBのデータを毎日Amazon S3バケットへCSV形式で保存するAWS Lambdaを作成する機会がありましたので、紹介します。 構成としては以下のとおりです。 Amazon EventBridge Schedulerで毎日01:00にLambdaを呼出します Lambdaは、DynamoDBから前日に保存されたデータを取得します。 LambdaでCSV形式に変換し、S3バケットに保存します。 DynamoDBのテーブルは、属性としてデータを保存した日付が入っていれば、テーブルは何でもよいですが、今回は以下の記事で作成したテーブルを利用します。 本記事で使用するDynamoDBのテーブルには、start_date(保存した日付)の属性が必要です。存在しない場合は、新たに追加してください。 保存した日付:start_date(必須) 例:2024-04-
はじめに データアナリティクス事業本部の大谷(おおや)です。 ついにData Wrangler Extension for Visual Studio Code(以降Data Wrangler)がプレビュー版から正式版になりました! この記事では、前回紹介できなかった、ファイルからData Wranglerを起動する方法についてまとめていきたいと思います。 Data Wrangler とは VSCode および VSCode Jupyter Notebook で、データの表示や分析を直感的に行うことができるようになる VSCode の拡張機能です。 セットアップ インストール方法や、ランタイムの設定などは前回記事をご確認ください。 実践 ファイルから Data Wrangler を開く方法は3パターンあります。 それぞれ確認していきましょう。 1. VSCode のエクスプローラー上で右ク
こんにちは、戸田です。 このブログではTypeScriptの環境構築からJestを使用した簡単な四則演算のテストの方法を解説します。 環境構築 まずは環境構築をします。 今回はかなりシンプルな環境を構築します。 今回使用した環境は以下です。 Node.js v21.5.0 TypeScript v5.4.0 Jest v29.7.0 TypeScriptのインストール package.jsonをセットアップする npm init -y TypeScriptをインストールする npm install typescript --save-dev Node.jsのプログラムに必要な型宣言ファイルnode.d.tsをインストール npm install @types/node --save-dev TypeScriptの設定ファイルtsconfig.jsonを初期化 npx tsc --init
はじめに 世の中ではGrafana Weekということで、Raspberry Pi 5複数台をクラスタリングしてKubernetesを作成し、Grafanaを載せてみたいと思います。 というのは冗談ですが、最近趣味で安価に常駐プロセスをデプロイできるホスティング環境に悩んでいました。常駐しないなら最近はゼロコールドスタートなV8 Isolateを使ったCloudflare WorkersやDeno Deployが無料枠が大きくいい感じです。 一方常駐プロセスはHerokuの無料プランがなくなりました。AWS AppRunnerは起動時間を人間が稼働している時間のみに絞っても10$はかかります。fly.ioは、Legacy hobby planでCPU-1x 256mb VM 3つと3 GB 永続ボリュームストレージは無料で扱えます。fly.ioはCLIもよくできているので、軽い検証の場合こ
今回はPythonで簡単にリトライ処理を追加できる「tenacity」を使ってみます。 デコレータ形式で簡単にリトライ処理を追加できるので便利です。 tenacityについて プログラムを書いていて、HTTPの通信などでリトライ処理を実装する機会は多いと思います。 今回はそんなリトライ処理を簡潔に書けるtenacityの使い方を説明します。 インストール インストールはpipで可能です。 インストール pip install tenacity 使い方 シンプルな例 シンプルな例 import random from tenacity import retry @retry def random_error(): num = random.randint(0, 10) if num > 4: print(f"Error: num={num}") raise Exception("Error!
次のページ
このページを最初にブックマークしてみませんか?
『Developers.IO』の新着エントリーを見る
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く