2022-01-01から1年間の記事一覧
github.com
github.com これは何? SQS+PostgreSQL+Lambdaとその間をつなぐデーモンで構成されたジョブキューシステムです。 入り口のSQLにメッセージを投げると、メッセージで指定した関数名のLambdaが実行されます。 Lambdaの実行に失敗した場合は、適当な感覚でリト…
親Contextの都合でcancelしてほしくないが、loggerの引き回しはContextでやりたい、みたいなときにDeadline()/Done()/Err()を無視すればいいのかなぁ…と思って実装してみた。 cancelされたくないというのは、SIGINTですべてのgoroutineを停止したいんだけど…
github.com ※ただしAWS Event Bridge
https://cronplan.in/ Show cron schedule. USAGE: curl cronplan.in -d '5 0 * * ? *' curl cronplan.in -G --data-urlencode 'e=5 0 * * ? *' see http://cronplan.in?e=5+0+*+*+?+* $ curl cronplan.in -d '5/3 0/3 ? * FRI *' Fri, 21 Oct 2022 00:05:00…
追記3 もろもろ作り直した github.com 追記2 いろいろ間違っていた… AWS: 1-7=SUN-SAT Linux?: 0-6=SUN-SAT 追記 1-10/3 とか MON-FRI/3 とかを忘れていたので作り直し… cron式をパースするGolangのライブラリを書いた。 github.com モチベーションとしては…
github.com これはなに? RDSのインスタンスクラスごとのメモリ量を習得するterraform provider。 インスタンスクラスごとにデータソースを定義するか、 data "rds_db_instance_memory" "rds" { instance_class = "db.t3.micro" } #=> { # "instance_class" …
see https://tech.kanmu.co.jp/entry/2022/12/04/131536 クエリログ log_statement=allを設定するとpostgresql.logにクエリログされる。 $ cat postgresql.log 2022-05-30 04:59:41 UTC:10.0.3.147(57382):postgres@postgres:[12768]:LOG: statement: select…
ridgepoleの1.0.2でパーティショニングの対応が入ったのですが、これを削除することを考えています。 理由としては、パーティショニングの機能は多岐にわたりそのすべてをサポートするのは難しいのですが 現状では本体に密結合になっているため、オプショナ…
demitas2 github.com demitasでシェルスクリプトを使っていた部分がつらくなってきたので、Goで書き直したもの。 ssocreds github.com AWS SSOの一時的なクレデンシャルを出力するやつ。 poslog github.com posgresql.logをパースしてNDJSONで出力するやつ。
RDS(PostgreSQL)でクエリログをON(log_statement=all)・OFF(log_statement=none)、さらにexportしたときの性能の変化が気になったので、pgbenchで負荷テストを行ってみた。 テスト環境 クライアント pgbench (PostgreSQL) 14.2 (Ubuntu 14.2-1ubuntu1) EC2の…
MySQLでpgbenchと同じようなTPC-B likeなテストを実行するツールを書いた。 github.com これは何? pgbenchと同様のtcpb-likeなテストを実行する負荷テストツール。 github.com pgbenchとだいたい同じSQLが実行されると思うが、TPC-Bの仕様をきちんと満たし…
PostgreSQLエンジンでAuroraとRDSでpgbenchを使った負荷テストを行った。 テスト環境 クライアント pgbench (PostgreSQL) 14.2 (Ubuntu 14.2-1ubuntu1) EC2のc5.2xlargeインスタンスから実行 クライアントインスタンスの性能上限には引っかかっていないこと…
ヒューマンリーダブルなURLでesa.ioの記事を開くやつを作った。 github.com これはなに? http://your-esaop.example.com/foo/bar/zoo のような感じの記事のパスを指定したURLを開くと esa.io の https://[team].esa.io/posts/12345 というURLにリダイレクト…
apt-transport-s3をGoに移植してapt-transport-s3-goを作った。 github.com これは何? aptのリポジトリとしてS3を利用できるようにするやつ。 すでにapt-transport-s3が存在しているのだがあまりメンテナンスされている様子がなく、またpythonやpython-conf…
三行で pkg/errorsのスタックトレースが見にくい DatadogのError Trackingが見にくい まあまあなんとかするやつを作った pkg/errors Goのスタックトレース事情については、以下を参照のこと。 zenn.dev 現状では標準ライブラリにスタックトレースが実装され…
github.com 以前業務でMySQLのRDSのスロークエリをCloudWatch Logs サブスクリプションフィルター+LambdaでAmazon ES(現OpenSearch)に集めるやつを作った。 似たようなものをPostgreSQLのRDSで作ったのだが、今回の要件ではクロスアカウントでログを集計す…
github.com これは何? esaのCLIです。 AWS CLIでs3を操作するのと同じような感覚でesaを操作できます。 使い方 see https://github.com/winebarrel/kasa#usage 最初に環境変数ESA_TOKENとESA_TEAMの設定が必要です。 記事の一覧を出す % kasa ls | head 202…