BioErrorLog Tech Blog

試行錯誤の記録

はてなブログのサイトマップ送信で"取得できませんでした"状態を解消する | Google Search Console

はてなブログのサイトマップをGoogle Search Consoleに登録した際、ステータスが "取得できませんでした" になる問題を、ついに解消することができました。 手順を紹介します。 はじめに サイトマップの"取得できませんでした"状態を解消する 1. サイトマッ…

エラー対処: Object of type datetime is not JSON serializable | Python

Pythonのjsonモジュールを利用してjson変換する際に発生した、下記のエラーの対処法をまとめます。 "Object of type datetime is not JSON serializable" はじめに 背景 対処法 defaultパラメータ 対処法1:string変換 対処法2:カスタム変換 おわりに 参…

特定のIAM RoleがアタッチされたEC2インスタンスを列挙する | AWS CLI

AWS CLIを用いて、特定のIAM RoleがアタッチされたEC2インスタンスを列挙する方法の備忘録です。 はじめに 特定のIAM RoleがアタッチされたEC2を列挙する やり方 解説 ec2 describe-instances --filters --query --output おわりに 関連記事 参考 はじめに …

S3バケットポリシーとIAMポリシーの関係を整理する

S3バケットポリシーとIAMポリシーの関係を、同一アカウント・クロスアカウントそれぞれにおいて整理します。 はじめに S3バケットポリシーとIAMポリシーの関係 結論 検証準備 同一アカウント内アクセス クロスアカウントアクセス おわりに 参考 はじめに こ…

英語圏でGoogle検索する方法

英語圏のサイトをGoogle検索する方法を整理します。 はじめに 英語圏でGoogle検索する 結論 URLパラメータの説明 おわりに 参考 はじめに こんにちは、@bioerrorlogです。 技術的な調べ物をするときは、なるべく英語で検索するようにしています。 日本語での…

LambdaでAWS CLIを実行する | AWS Lambda Layer

Lambda Layerを利用して、Lambda上でAWS CLIを実行する方法をメモします。 はじめに LambdaでAWS CLIを実行する Python仮想環境の作成 仮想環境にAWS CLIをインストール Python実行パスの変更 AWS CLI関連パッケージをzipファイルにまとめる Lambda Layerの…

Unityで位置情報(緯度/経度/高度)を取得する | Android / iOSアプリ

UnityでGPS位置情報(緯度/経度/高度)を取得する方法を整理します。 はじめに Unityで位置情報を取得する 最終的なアプリ 位置情報を取得するスクリプト おわりに 参考 はじめに こんにちは、@bioerrorlogです。 ふと、位置情報を利用したアプリを作ってみた…

S3既存オブジェクトに一括でbucket-owner-full-controlを付与する | AWS CLI

S3バケットの既存の全オブジェクトに--acl bucket-owner-full-controlを一括付与するやり方の備忘録です。 はじめに 既存オブジェクトにbucket-owner-full-controllを一括付与する 追記バージョンコマンドの解説 旧バージョンコマンドの解説 おわりに 関連記…

Boto3でAssumeRoleする | AWS SDK for Python

Boto3でAssumeRoleするやり方をまとめます。 はじめに Boto3でAssumeRoleする AssumeRole関数の実装 使用例 おわりに 参考 はじめに こんにちは、@bioerrorlogです。 Boto3を利用したPythonスクリプトで、AssumeRoleしたい状況はよくあります。 その度にAssu…

aws s3 cpとsyncの違い | AWS CLI

AWS CLIのs3 cpとs3 syncの違いをまとめます。 はじめに cpとsyncの違い Descriptionを比較する コマンドオプションを比較する コマンドの挙動を比較する おわりに 参考 はじめに こんにちは、@bioerrorlogです。 あるS3バケットのオブジェクトを別のS3バケ…

CloudWatch EventsでS3への特定オブジェクトのアップロードを検知する

S3への特定オブジェクトのアップロードをトリガーに、CloudWatch Eventsを起動するやり方の備忘録を残します。 はじめに CloudWatch Eventsのイベントソースを調べる S3トリガーで起動するCloudWatch Eventsを作成する CloudTrail証跡を作成する CloudWatch …

grepコマンドで特定の文字列を含むファイルを検索する | Linux shell

ある特定の文字列を含むファイルをLinuxコマンドで検索する方法を整理します。 はじめに ある文字列を含むファイルをコマンドで検索する やり方 解説 補足: 特定ディレクトリをgrep対象から除外する おわりに 参考 はじめに こんにちは、@bioerrorlogです。 …

Godot EngineでBoids Flockingを実装する | 人工生命

Boids FlockingシミュレーションをGodot Engineで実装します。 はじめに Boids Flockingとは 実装 Separation Alignment Cohesion エサを追いかける動作 おわりに 参考 はじめに Boids Flocking (ボイドモデル / ボイド群衆アルゴリズム) をGodot Engineで実…

Amplify & GraphQLでのデータモデル設計事例集

AWS Amplify & GraphQLでのデータモデル (スキーマ) 設計例をまとめます。 はじめに スキーマ設計例 Todoアプリ イベントアプリ チャットアプリ Eコマースアプリ WhatsAppクローン Redditクローン マルチユーザーチャットアプリ インスタグラムクローン カン…

Amplify & AppSyncで時系列データを日付範囲でList取得する

AWS Amplify (AppSync)で、時系列データをある日付の範囲でList取得する方法を記します。 はじめに Amplify & AppSyncで時系列データを日付範囲でList取得する ケース1: 全List取得に対する日付範囲での絞りこみ ケース2: Partition keyを指定した上での日…