ツー

日常の記録

プログラミング

LINEのアカウントの種類が迷子になるのでメモしておく

認証済みアカウント バッチが紺色のやつ。 www.lycbiz.com LINE Official Account Managerから申請する 恐らくは店の実在性をチェックしている 申請自体は誰でもできる 認証プロバイダー バッチが緑色のやつ。 developers.line.biz パートナー企業またはLINE…

AWS SNSの署名検証が失敗するときはサーバーにSHA-1が入っていない可能性がある

タイトルの通り。 解決案としてはAWS SNSの署名バージョンをv2にすることだが、SHA-1を使う署名バージョンv1は脆弱であるので、どっちにしろ可能であればSHA-256を使う署名バージョンをv2にしてしまったほうがよい。 以上! 以下経緯。 AWS SNSの署名検証で…

デフォルトVPCから自分で作ったVPCに移行したら死ぬほどハマった

いままではデフォルトVPCでよしなに作っていたが、ちゃんとアドレス設計してVPCを作ろうと思ったら知らんことたくさん出てきてハマりなおしたのでメモしておく。 巷のチュートリアルを参照してVPC、サブネット(今回はパブリックのみの構成にした)、インタ…

iPhoneの機能(ショートカット)だけでボタン押下時の位置情報を記録するやつをつくる

ないもんは作るしかないらしい。 概要 要件 ショートカットの作成 ウィジェットに追加する AssistiveTouchにショートカットを設定 AssistiveTouchを簡単にオン・オフできるようにする まとめ 概要 iPhoneにはショートカットというアプリがOS標準で搭載されて…

同じ端末で秘密鍵を複数用意してそれぞれの鍵でGitHubに接続する

複数のGitHubアカウントを同じ端末で操作する際に秘密鍵を分けるための方法。 別のアカウントでも同じ秘密鍵使えないかなと思ったけどできない。当たり前か。なのでまず最初に新しく秘密鍵を作る。忘れないようにデフォルトのキーを作ったディレクトリと同じ…

Amazon Linux2でnode v20が動かないので古いnode v16を入れる

経緯 対処方法 インストール方法 まとめ 経緯 放置しすぎたAmazon Linux2で作ってあったCI用のコンテナが動かなくなったので色々調べると、Amazon Linux2上ではNode v20が動かないらしい。 自分もGitHub Actions上で下記のエラーが出まくっていた。 /__e/nod…

Lambda上でnodeのsharpが動かないのをなんとかする

現状 Lambdaの修正 インストール まとめ 現状 長らく放置していたnode(version8くらい)で作ったイメージをリサイズするLambdaが死んでいたので修正していた。 死ぬようになった原因は、Lambdaを実行するイメージのベースがAmazonLinux2に移行してimagemagick…

AWS Summit Japan 2024に行ってきた

今年も業務で参加。業務用に提出するのとは別にメモを記録しておく。 概要 到着 基調講演 AWS Japan CEO 巨勢 泰宏 生成AI VP ラフール パサック JR東海 水津 亨 電通デジタル 山本 覚 CUS-47 1150~1220『たまごっち』シリーズの進化と、AWS IoT で築いた『…

PostgreSQLで単発で結果が必要なときに使うSQL文たち

timezoneの設定 epochからformatしたdate string timezoneの設定 timezoneの変え方をいつも忘れるが、SET SESSION timezone TO 'Asia/Tokyo'; でtimezoneが変わってtimestampの表示も変わる。 postgres=> select to_timestamp(1234567890); to_timestamp ---…

ReactでSPAを手っ取り早く作る

久しぶりにclient appを作ろうとしたら 「create-react-app はもう推奨されとらんで」と言われてマジか??となったので、似たようなことのやり方をメモっておく。 vite がミニマムかつ create-react-app みたいなことができるらしいので使うのと、routerと…

devcontainerでホスト側のファイル権限がrootになる問題の対処

結果、Dockerのコンテナ作成にだけ気を付ければよかった。 気を付けるべきことは1点 調べたこと色々 ホストのファイル所有者がrootになる 公式による対処法 useraddがない remoteUserの指定は不要 まとめ 参考 気を付けるべきことは1点 devcontainerで使うコ…

AWSのsession manager経由でscpする

簡単だった。 やり方としてはsshをhookするものを仕込んですり替えると言う感じ。 セットアップと接続 ~/.ssh/config に下記を追加。 host i-* mi-* ProxyCommand sh -c "aws ssm start-session --target %h --document-name AWS-StartSSHSession --paramete…

PostgreSQLで全テーブルを削除するSQLを一発で作る方法

たまーによく使うのでメモ。 select 'DROP TABLE ' || tablename || ';' from pg_tables where schemaname not like 'pg_%' and schemaname != 'information_schema';

POSTの本文をそのままにして別ページにredirectする

307 Temporary Redirect でそういうことができるらしい。 なおSPAじゃなく普通のMVCな構成の時の話。 方法 注意点 まとめ 方法 リダイレクトする側はPHPではこんな感じ。汎用性を考えてこんな感じで。 function redirect($url, int $statusCode = null) { he…

WSLが突如使えなくなったので対処

なんでやねん。 対処その1:設定見直し 対処その2:対処療法 まとめ 対処その1:設定見直し 今回はこれが原因ではなかったが、見直すことが多いのでメモ代わりに調べたことを書いておく。 BIOS 仮想化支援技術がオンであるかをチェック タスクマネージャー→…

Twitterから「Application suspension notice」というメールが来た

こういうメール。 そんなに使用頻度が高くないのに何で??と思ったが、既存のアプリがいっぱいあることが原因らしい。 対処法はメールに書いてあることをやればいいだけ。 Twitterの開発者ページに行って Log in to Twitter / Twitter 左メニューにあるProj…

いまさらNext.jsを触りはじめる

もっと早くつかっておけばよかった。 nvm, nodeのインストール nextjsのインストールと起動 material-ui改めmuiのインストールと利用 まとめ 参考 nvm, nodeのインストール 現マシンに何も入っていないのでnodeのインストールから。 GitHub - nvm-sh/nvm: No…

AWS Summit Tokyo 2023に行ってきた

業務で。 報告書を会社に提出するけれど、どうせまとめるなら社会性フィルターを通す前のメモを残しておく。 以下はすべて敬称を省略する。 受付 各セッション DJタイム KEY-01 基調講演 アマゾン ウェブ サービス ジャパン合同会社 代表執行役員社長 長崎 …

MutationObserver便利

Reactの裏側で使われているとは知っていたものの、jQueryが使われていてJavaScriptのコードがあっちこっちで書かれているみたいなレガシーな案件の時に役に立ったのでメモ。 window.addEventListener("load", function() { // 要素が変更されたときに実行す…

テーブルのレコード数とsequenceを合わせる in PostgreSQL

開発環境と本番環境のデータを行ったり来たりして、テーブルのレコード数とsequenceの値がずれてinsert時にエラーが起こるのはあるある。いやなくせ。 というわけで両者の値を合わせるSQLを書いた。本当はSQLのみで解決したかったけど、あんまりやらないこと…

JMeterでcookieありで、かつそれぞれを別ユーザでアクセスしたい

JMeterで負荷試験をやりたいけれど、ログインした先の画面をテストしたいのでつまりはcookieが必要で、cookieが書かれたファイルを読み込んでアクセスごとに別ユーザで負荷試験してほしかったんだけど、標準機能ではできなそうだったのでBeanShellサンプラー…

PostgreSQLでUPSERTをするにはCREATE UNIQUE INDEXでUNIQUEインデックスを作成するのではなくALTER TABLEでUNIQUE制約を作成する必要がある

長いがタイトルの通り。 結論 検証 テーブル例 CREATE UNIQUE INDEXでUNIQUEインデックスを作る ALTER TABLEでUNIQUE制約を作る UPSERT句で使う まとめ 結論 CREATE UNIQUE INDEX は UNIQUEインデックス を作る。ALTER TABLE ... ADD CONSTRAINT ... UNIQUE …

Macbookのセットアップ in M1 MacBook Air

久しぶりにセットアップしたらめっちゃ楽になっとる。 OSの設定項目 brewのインストール Brewfileを作る 1Passwordのextensionだけbrewで入らない Powerline用のフォントインストール VSCode codeコマンドを使えるようにする シェル関連 秘密鍵 perl まとめ …

本日の買い物:MacBook Air (M1, 2020)

そろそろコードを書いていきますか 内容物すくねぇ。 カスタマイズ無しの再安価品を買った Amazonの分割払いがある まとめ カスタマイズ無しの再安価品を買った M1とM2でも迷ったし、ストレージとメモリを増やすかどうかでも迷った。 M1の一番最安値のスペッ…

リモートにある複数のログファイルをtailする

multitailという便利なものがあるので使いつつ、wrapperを書く感じでいいのではないか。 INSTALL リモートのログを見に行くのに鍵の指定がめんどくさいので、keychainに任せるため一緒にインストール。 sudo apt-get install multitail keychain SCRIPT サー…

CloudFront+lambda@edgeでオンデマンドで画像のリサイズしてくれるやつを作る

だいたいはAWSの公式ブログの通り。 上記に書いてなくてハマったことが2点。 bucket policyにGetObjectだけじゃなくてListObjectがないと403が出て混乱する 上記のAWSブログにあるやつを実装してみると404かどうかをチェックしてリサイズの処理を走らせてい…

無限にたまったCloudWatch Logsの空のlogstreamを全部削除する

CloudWatch Logsのログ自体は、保持期間を指定できるのでデータは消えてくれるけど、データの入れ物であるlogstreamだけは空のものが延々と残り続けるので削除する。 コード こういう時はさくっとできるserverless frameworkで。 service: lambda-delete-emp…

SNSとSQSでpub-subな仕組みを構築するための検討

SNSトピックに {"command":"mail.send", param:{"name":"moge"}} みたいなのを投げるとjob queueが動くみたいなのを作りたかったので検討。 SNS -> SQS -> Lambda みたいな構成。 SNSの上限 SQSの上限 システム要件との比較 まとめ SNSの上限 https://docs.a…

reactやwebpackの最新版に追随する

なんかずっとnodejsのモジュールのアップデートしてる気がするな。 nodejsのモジュールアップデート方法 nodejs自体のアップデート typescriptやeslintでどうしても直せないエラー react-router v6 webpackの設定が変わった まとめ nodejsのモジュールアップ…

WSLでpuppeteer

Linux上ではなくWindows上のChromeを呼んだり、バイナリダウンロードしたりと、いろいろ試したけどうまくいかなかったんだけど、以下で試したらあっさり動いたのでメモ。 セットアップのコマンド sudo apt-get install libappindicator1 libappindicator3-1 …