テクノロジー
これは Mackerel Advent Calendar 2024 1日目の記事です。 前置き こんにちは。サーバー監視・オブザーバビリティプラットフォームであるMackerelの開発者で、「オブザーバビリティの実現」チームでテックリード兼プロダクトオーナーをしております id:arthu…
本日よりMackerel開発チームは内部的に2つのユニットに分割されることになったのですが、一方であるオブザーバビリティユニット(仮称)のテックリードに私 id:arthur-1 が就任しました。オブザーバビリティプラットフォームとしてのMackerelの機能や、その…
AWSにおいてリソースの識別子として使われるAmazonリソースネーム(ARN)というものがあります。私は、ARNには英数字と一部記号しか使えないものとばかり思っていました。 それでは以下の画像をご覧ください: なんと、ARNに日本語どころか絵文字まで入って…
blog.arthur1.dev 以前公開したGoのバージョン指定・更新に関するブログで、GitHub Actionsのsetup-goについてこんなことを書きました。 stableを指定しておけば、大体の場合(最新に保った)toolchainディレクティブ以上のバイナリを最初から用意してくれる…
2024-09-01 v0.2.0で破壊的な変更をリリースしたので本エントリのコードも合わせて修正しました OpenFeatureとは OpenFeatureをご存知ですか?OpenFeatureは特定のベンダーに依存しないフィーチャーフラグの標準APIを定めるプロジェクトです。CNCF仲間のOpen…
2024-08-28 GOTOOLCHAIN=auto時にはtoolchainディレクティブに指定したものより新しいGoがインストールされていても戻るわけではないという話を追記しました。 Go言語では半年に1回メジャーリリース(マイナーバージョンの更新)がやってきます。ちょうどこ…
去る2024年8月3日(土)・4日(日)に開催されたSRE NEXT 2024にて、当日スタッフをしておりました。SRE NEXTの当日スタッフとして関わるのは昨年に続き2度目となります。今回はTrack Aのお部屋で司会・タイムキーパー・誘導などしていましたので、ご来場い…
様々な言語で提供されているAzure SDKのコアモジュールにはHTTP Pipeline Policyという仕組みが実装されています。 Java版のドキュメントが一番わかりやすかったので、こちらに掲載されている画像を引用して、HTTP Pipeline Policyが何たるかを説明します。 …
ブログを書くまでがYAPC!ということで、今更すぎますがYAPC::Hiroshima 2024の振り返り記事を書いていきます。ログなのでメッセージ性はそんなにありません。 yapcjapan.org Stats 株式会社はてなのエンジニア(当時新卒2年目) YAPC参加歴は2回目 前回の参…
Webアプリケーションの裏側にさらにHTTPサーバが立っていて、レスポンスを返すために裏側のサーバにリクエストを送ってその結果を必要とするような構成があります。裏側のサーバに設定さえたAPIレートリミットへの対応やサーバへの過負荷を避けるため、キャ…
事象 piyolog.hatenadiary.jp CVE-2024-6387の対応のため、個人開発サービスを運用していてインターネットに露出しているサーバのopenssh-serverをアップデートしていた。 Google CloudのCompute Engineで立てているあるサーバのopenssh-serverをapt upgrade…
OpenTelemetryを使い始めるにあたって、既存の監視ツールからいきなり切り替えることは難しく、基本的には一時的に並行稼働させて様子を見ることになると思います。 これまでmackerel-agentをインストールし、Mackerelにホストとして登録してシステムメトリ…
blog.arthur1.dev でご紹介した、OpenTelemetry Metricsを手軽に投稿できるCLIツール「otlc」のv0.2.0をリリースしたので再度ご紹介します。 github.com 使い方 インストール (macOS, Linux)×(x86_64, arm64)向けのバイナリをGitHubのReleaseで配布していま…
IPsec VPN実装であるLibreswanの状態をメトリックとして見られるようにするMackerelプラグインを作りました。 github.com strongSwanのものは先人が作っていましたが、Libreswanのものがなかったので自作した形です。 nonylene.hatenablog.jp 何が見られるか…
blog.arthur1.dev の続編です。今回はrunnによるシナリオテストの結果を投稿するツールをOpenTelemetry CollectorのReceiver (Scraper)として作ってみました。 リポジトリ 以下のリポジトリで id:arthur-1 によるOpenTelemetry Collectorの自作Component群を…
先日、kamakura.go #6にて、「slog登場に伴うloggerの取り回し手法の見直し」という題で登壇しました。Go Conference 2024にこの内容でproposalを出していて落選してしまったのですが、kamakura.go #6のテーマ「昔のGo、今のGo」とピッタリだったので応募し…
OpenTelemetryにおいて、OTel CollectorのReceiverを開発するときやアプリケーションに計装をする際、MetricsのUnit(単位)にどんな文字列を指定すべきかよく分からなかったので調べてみました。 semconv OpenTelemetryにはSemantic Conventions(semconv)…
オフラインの技術カンファレンス・イベントも徐々に復活し賑わいを見せつつある今日この頃、いかがお過ごしでしょうか。 多くの聴衆に等しく声を届けるための道具「マイク」はカンファレンスに欠かせないものとなっています。 普段はアプリケーションエンジ…
2024年に入って2件登壇しましたので、こちらのエントリで振り返っていきます。 Hatena Engineer Seminar #28 「技術習得を支え続けた私の個人開発ヒストリー」 Scalaわいわい勉強会 #2「見せ算をScalaで実装してみた」 Hatena Engineer Seminar #28 「技術習…
arm64では/proc/cpuinfoからCPUのモデル名を取得できない Linuxにはシステムの様子を知ることができる仮想ファイルがいくつかあります。そのうちの一つが/proc/cpuinfoで、その名の通りCPUの情報が以下のように閲覧できます。 $ cat /proc/cpuinfo processor…
Mackerelのメトリックプラグインやチェックプラグインは、特定のフォーマットで標準出力に書き出すという要件さえ満たしていればどのように作ってもOKです。Go言語以外でも作れるし、なんならmackerel-agent.confにシェルスクリプトを書いても動きます。標準…
mackerel-agentをコマンド1つでインストールすると、ホストが登録されMackerel上で以下のようにホストのシステムメトリックのグラフを閲覧することができます。最速便利。 さて、メトリックを収集する仕組みはOpenTelemetryという標準規格に統一されようとす…
Palworldというゲームが2023/1/19に発売された。 www.pocketpair.jp このゲームはMinecraftのようにDedicated Serverを個人で建てて誰かと一緒のワールドで遊ぶことができるようだ。友人にサーバを建ててくれと依頼されたので構築することにした。 構築の流…
Goのloggerを引き回す際に皆さんはどのような手法を取っていますか? グローバル変数にloggerのインスタンスを入れておく contextにloggerのインスタンスを入れておく トレースIDなどを入れたloggerを適宜作ってcontextに格納する 構造体のフィールドにlogge…
家でいくつかRaspberry Piを飼っておりそれぞれにUbuntuをインストールしているのですが、ログインした際に以下のように「System restart required」と言われることがあります。 Welcome to Ubuntu 22.04.3 LTS (GNU/Linux 5.15.0-1044-raspi aarch64) (中略…
Go言語で作ったアプリケーションをコンテナイメージにするとき、以下のようにマルチステージビルドを利用したDockerfileを書くことが多いでしょう。 FROM golang:1.21-bookworm as builder WORKDIR /opt/app COPY go.mod go.sum ./ RUN go mod download COPY…
このエントリははてなエンジニアAdvent Calendar 2023の2024年1月8日の記事です。 昨日はid:handatさんのGitHubでパブリックリポジトリへの誤投稿を防ぐ拡張機能「GitHub Public Repo Alert」の紹介 - handatのdatファイルでした。 私id:arthur-1はサーバー…
arthur-1 Mackerel Advent Calendar 2023 マラソン25日目の記事です。いよいよラストのエントリとなりましたが、特別なことは書かずにこれまでと同じ調子で書きます。 カスタムダッシュボードにグラフアノテーションを表示できるようになりました! blog.art…
arthur-1 Mackerel Advent Calendar 2023 マラソン24日目・およびSlack Japan Champions Network (JCN) アドベントカレンダー 2023 24日目の記事です。 MackerelとSlackのインテグレーション Mackerelの通知チャンネルとして、Slackを選択することができます…
arthur-1 Mackerel Advent Calendar 2023 マラソン23日目の記事です。 「キカク組」の取り組みをMackerel Drink Upでお話ししました 2023年9月26日に行われたMackerel Drink Up #11で、私 id:arthur-1 が本エントリタイトルと同じ「仮説検証サイクルでユーザ…