2020-01-01から1年間の記事一覧
かなりニッチな話題ですが、OMA LwM2Mのサーバ・クライアントのJava実装であるEclipse Leshanにパッチを送って取りこまれたのでそのご報告です。github.comLeshanのクライアントライブラリには予期せぬ例外が発生した際にクライアントアプリケーションがスタ…
こんにちは。id:moznionと申します。Hachioji.pmというIT技術コミュニティに所属しています。本記事はPerl Advent Calendar 2020の記事として記述されています。前日の記事は@mihyaeru21さんのGitHub Actions で Perl を動かすときのテンプレートでした。 Ha…
An English article is here: https://dev.to/moznion/released-radius-rs-2e1oタイトルの通り、AAA (Authentication, Authorization and Accounting) のためのデファクト・スタンダードなプロトコルであるところのRADIUSのサーバー・クライアント実装をRust…
ここ最近では何らかのインターネットサービスを構築・運用するにあたって、ネットワーク越しのリトライを考えることは避けられなくなりつつあります。 micro services のようなアーキテクチャを採用している場合はサービス間のメッセージのやり取りはまず失…
pprof って go のやつでしょ? node のプロファイルが取れるわけ無いやろ,と僕も思っていたんですが以下のライブラリを使うことで取れることがわかりました.github.com使い方については Using the Profiler に書いてあるとおりで,アプリケーション側に co…
github.com今日 (2020-09-24) の時点では「ローカル環境」で動かす方法については記載がある一方で,何らかのリモートの環境に「本番」っぽく動かす方法についての記載が無いので,それを AWS 上に構築するためのメモを記します. 競技用 application のデプ…
かつて Kyoto.なんか #4 で発表した話題ですけれども:moznion.hatenadiary.comこれはもうやってません!!!(正確に言うと運用している組織内ではリタイアメントの段階に入っています) 今はCodeBuildを単体で使っています. かつての AWS CodeBuild は ビ…
表題のとおりです. GitHubのオフィシャルドキュメントを読むとmavenで使う方法やgradleで使う方法は紹介されているのですがsbtで使う方法が調べてもシュッと出てこなかったのでメモとして記す次第. 基本的には以下のようにmavenやgradleと同様にbuild.sbt…
PHPのエッジなバージョン (例えば今の時点だと 8.0.0alpha3) を使いたい場合,多くの場合はソースコードからビルドする必要があります.その他にもランタイムのオプションをいじりたいだとか,そういった様々な理由からPHPをソースコードからビルドしなけれ…
本質の話をしました pic.twitter.com/8fCYIbH6Av— moznion (@moznion) 2020年6月24日 perl,やはり心のふるさとという感じがある……(流石に全盛期と比較して手のスピードは落ちたけど 大きな問題は他の人にとってふるさとではないということです とりたてて…
netty を使うような非同期 Java のアプリケーション (例えば Play2 Web アプリ) の flame graph profile を取るという話題です.色々な方法が考えられますが,jvm-profiling-tools/async-profiler を利用するのが最も手っ取り早そうな感じがしたので,その方…
English article is here: Released go-json-ice: a code generator of JSON marshaler for tinygo - moznion's tech blog tinygo では encoding/json を import するとコンパイルできなくなるという問題があり *1,なんらかの struct を JSON に marshal し…
td-agent-gem を利用している時に google-protobuf requires Ruby version = 2.5. というエラーがでて困るという事がありました.support.treasuredata.comtd-agent の ChangeLog を見た感じ,この記事を書いている時点での td-agent の最新バージョン v3.7.…
Perl の話です.metacpan.orgEmail::MIME::ContentType 1.023 (なお本バージョンは TRIAL Release となっています) 以降から build_content_type と build_content_disposition という関数が追加されています.それぞれ名前の通り Content-Type と Content-D…
maedama.hatenablog.com trapezoid.hatenablog.com上記のブログには今から6年ほど前の当時の情報が記されていますが,Redis 4.0 RC3 以降の Slave (replica) の Expire は信用して良くなっているようです. Redis の公式ドキュメント (Replication – Redis) …
github.comSpotless を sbt から利用するためのプラグインであるところの sbt-spotless をリリースしました.Spotless は意欲的に開発されている Java (JDK 言語) のプロジェクト向けのコードフォーマッターで,実に様々なフォーマットに対応しています *1.…
github.com表題の通りリリースいたしました. これはなに Zabbix internal checks と呼ばれる Zabbix プロセスの状態を表現するメトリクスを定期的に収集し,Prometheus のメトリクスフォーマット (i.e. OpenMetrics) で export する Prometheus exporter で…
Javaの話題です.jackson-databind を使って JSON のデシリアライズを行っていて,数値を int にマッピングしている場合,その値が int (32bit) の取りうる値を超えた時の挙動が「バージョンによって異なって」います. 以下に挙げる挙動は 2.9.3 から 2.9.4…
基本的に Wireshark を使うことで得られるパケットキャプチャファイルは pcapng と呼ばれるフォーマットになっており,これは pcap フォーマットとは異なります.例えば複数のパケットキャプチャファイルを時系列に従ってマージできるコマンドラインツールで…
AWS CodeBuild から AWS CDK を呼び出し,いい感じで継続的に構成を更新し続けるパイプラインのようなものを作っておくと何かと便利です. さてこの時,AWS CodeBuild を実行する IAM Role の権限がそのまま AWS CDK の実行に影響するので,その IAM には Cl…
kazuho さんのこれをシェルスクリプトでやりたいというお話です.kazuhooku.hatenadiary.orgこんな感じ: nc -l 0 & NC_PID=$! lsof -n -P -p $NC_PID | grep TCP | awk '{print $9}' | awk -F ':' '{print $2}' kill $NC_PID nc で ephemeral port を listen…
macOS 上で pythonz を使って素朴に python をビルドしてインストールすると SSL/TLS 周りでずっこけて基本的に使えないものがインストールされる (そもそも pip とかが動かないので). brew で openssl を入れている場合は以下のように pythonz install す…
Raspberry Pi を Read-Only Root-FS にしておくと急にマシンがダウンした時でもファイルシステムが破損しにくくなります. もちろん書き込み内容は永続化されなくなりますが (書き込み内容は tmpfs にストアされるので rebootで揮発する),得てして電プチな…
要旨 どうやれば Zabbix API を使って所望の機能を実現できるかを調査する際には Zabbix が実際に呼んでいる SQL クエリを tcpdump で抜き出すと手っ取り早い. 内容 色々あってZabbixを使っているわけですが,この手のものを使っているとAPIを介して Active…