Mackerel Distro of OpenTelemetry (MDOT) Collector の deb/rpm パッケージ用インストールスクリプトを追加しました ほか 7 件のアップデート

こんにちは、MackerelチームCREの戸谷( id:KGA )です。今年最後のアップデートをお届けします!

Mackerel Distro of OpenTelemetry (MDOT) Collector の deb/rpm パッケージ用インストールスクリプトを追加しました

Mackerel Distro of OpenTelemetry (MDOT) Collector の deb/rpm パッケージ用インストールスクリプトを追加しました。MDOT は複雑な設定の必要なく Mackerel に OpenTelemetry 形式のテレメトリーシグナルを送信できるようにする、OpenTelemetry Collector ディストリビューションです。今回のインストールスクリプトの追加により、インストールやデーモンの設定も簡単に行えるようになりました。トレースやラベル付きメトリックの収集がより手軽になります。

deb パッケージのインストール方法:

curl -fsSL https://mackerel.io/file/script/opentelemetry-collector-mackerel/setup-apt.sh | MACKEREL_APIKEY='<YOUR_API_KEY>' sh

rpm パッケージのインストール方法:

curl -fsSL https://mackerel.io/file/script/opentelemetry-collector-mackerel/setup-yum.sh | MACKEREL_APIKEY='<YOUR_API_KEY>' sh

詳しくはドキュメントをご覧ください。

deb パッケージのインストール実行例:

ubuntu@ip-172-31-0-155:~$ curl -fsSL https://mackerel.io/file/script/opentelemetry-collector-mackerel/setup-apt.sh | MACKEREL_APIKEY='***' sh
Superuser authority is required to setup Mackerel Distro of OpenTelemetry (MDOT) Collector:
+ command -v curl
/usr/bin/curl
+ http_get=curl -LfsS
+ [ curl -LfsS =  ]
+ dpkg --print-architecture
+ ARCH=amd64
+ curl -LfsS https://api.github.com/repos/mackerelio/opentelemetry-collector-mackerel/releases/latest
+ + grepcut -d " -f 4
 browser_download_url.*linux_amd64.deb
+ DEB_URL=https://github.com/mackerelio/opentelemetry-collector-mackerel/releases/download/v0.6.0/otelcol-mackerel_0.6.0_linux_amd64.deb
+ mktemp --suffix=.deb
+ TMP_DEB=/tmp/tmp.r9DDXCQREc.deb
+ trap rm -f /tmp/tmp.r9DDXCQREc.deb; exit 1 HUP INT QUIT TERM
+ curl -LfsS https://github.com/mackerelio/opentelemetry-collector-mackerel/releases/download/v0.6.0/otelcol-mackerel_0.6.0_linux_amd64.deb
+ getent passwd _apt
+ chown _apt /tmp/tmp.r9DDXCQREc.deb
+ apt install -y /tmp/tmp.r9DDXCQREc.deb
Reading package lists... Done
Building dependency tree... Done
Reading state information... Done
Note, selecting 'otelcol-mackerel' instead of '/tmp/tmp.r9DDXCQREc.deb'
The following NEW packages will be installed:
  otelcol-mackerel
0 upgraded, 1 newly installed, 0 to remove and 0 not upgraded.
Need to get 0 B/35.7 MB of archives.
After this operation, 141 MB of additional disk space will be used.
Get:1 /tmp/tmp.r9DDXCQREc.deb otelcol-mackerel amd64 0.6.0 [35.7 MB]
Selecting previously unselected package otelcol-mackerel.
(Reading database ... 71735 files and directories currently installed.)
Preparing to unpack /tmp/tmp.r9DDXCQREc.deb ...
Unpacking otelcol-mackerel (0.6.0) ...
Setting up otelcol-mackerel (0.6.0) ...
Created symlink /etc/systemd/system/multi-user.target.wants/otelcol-mackerel.service → /usr/lib/systemd/system/otelcol-mackerel.service.
Scanning processes...
Scanning linux images...

Running kernel seems to be up-to-date.

No services need to be restarted.

No containers need to be restarted.

No user sessions are running outdated binaries.

No VM guests are running outdated hypervisor (qemu) binaries on this host.
+ rm -f /tmp/tmp.r9DDXCQREc.deb
+ echo MACKEREL_APIKEY=feJt7c8RLyc87nm6ss6Tc3bUM1jLxPi8HkNMG6hpCodU
+ systemctl reset-failed otelcol-mackerel.service
+ systemctl restart otelcol-mackerel.service
*************************************

     Done! Welcome to Mackerel Distro of OpenTelemetry (MDOT) Collector!

*************************************
ubuntu@ip-172-31-0-155:~$ systemctl status otelcol-mackerel.service
● otelcol-mackerel.service - Mackerel OpenTelemetry Collector
     Loaded: loaded (/usr/lib/systemd/system/otelcol-mackerel.service; enabled; preset: enabled)
     Active: active (running) since Tue 2025-12-23 01:57:07 UTC; 24s ago
   Main PID: 1643 (otelcol-mackere)
      Tasks: 7 (limit: 2204)
     Memory: 12.7M (peak: 13.0M)
        CPU: 73ms
     CGroup: /system.slice/otelcol-mackerel.service
             └─1643 /usr/bin/otelcol-mackerel --config=mackerel:default

Dec 23 01:57:07 ip-172-31-0-155 otelcol-mackerel[1643]: 2025-12-23T01:57:07.170Z        info        builders/builders.go:26        Development component. May change in the future.        {"resource": {"service.instance.id": "4698>
Dec 23 01:57:07 ip-172-31-0-155 otelcol-mackerel[1643]: 2025-12-23T01:57:07.171Z        info        service@v0.142.0/service.go:250        Starting otelcol-mackerel...        {"resource": {"service.instance.id": "46981d50-73b5-44>
Dec 23 01:57:07 ip-172-31-0-155 otelcol-mackerel[1643]: 2025-12-23T01:57:07.171Z        info        extensions/extensions.go:40        Starting extensions...        {"resource": {"service.instance.id": "46981d50-73b5-4467-94e6-cb>
Dec 23 01:57:07 ip-172-31-0-155 otelcol-mackerel[1643]: 2025-12-23T01:57:07.171Z        info        internal/resourcedetection.go:166        began pdetecting resource information        {"resource": {"service.instance.id": "46981d>
Dec 23 01:57:07 ip-172-31-0-155 otelcol-mackerel[1643]: 2025-12-23T01:57:07.172Z        info        internal/resourcedetection.go:223        detected resource information        {"resource": {"service.instance.id": "46981d50-73b5>
Dec 23 01:57:07 ip-172-31-0-155 otelcol-mackerel[1643]: 2025-12-23T01:57:07.172Z        info        otlpreceiver@v0.142.0/otlp.go:120        Starting GRPC server        {"resource": {"service.instance.id": "46981d50-73b5-4467-94e>
Dec 23 01:57:07 ip-172-31-0-155 otelcol-mackerel[1643]: 2025-12-23T01:57:07.172Z        info        otlpreceiver@v0.142.0/otlp.go:178        Starting HTTP server        {"resource": {"service.instance.id": "46981d50-73b5-4467-94e>
Dec 23 01:57:07 ip-172-31-0-155 otelcol-mackerel[1643]: 2025-12-23T01:57:07.173Z        info        internal/resourcedetection.go:166        began detecting resource information        {"resource": {"service.instance.id": "46981d>
Dec 23 01:57:07 ip-172-31-0-155 otelcol-mackerel[1643]: 2025-12-23T01:57:07.176Z        info        internal/resourcedetection.go:223        detected resource information        {"resource": {"service.instance.id": "46981d50-73b5>
Dec 23 01:57:07 ip-172-31-0-155 otelcol-mackerel[1643]: 2025-12-23T01:57:07.176Z        info        service@v0.142.0/service.go:273        Everything is ready. Begin running and processing data.        {"resource": {"service.inst>

【予告】メール通知チャンネルの API で、「オーガニゼーションに所属する全ユーザー」と「特定のユーザー」へのメール通知が区別されるようになります

これまで Mackerel の API において、メール通知チャンネルの「オーガニゼーションに所属する全ユーザー」と「特定のユーザー」の種類(通知チャンネル API 中の type キー)が区別されていませんでした。これを以下のように変更します。

  • 変更前
    • オーガニゼーションに所属する全ユーザー: type: "email"
    • 特定のユーザー: type: "email"
  • 変更後
    • オーガニゼーションに所属する全ユーザー: type: "email-broadcast"
    • 特定のユーザー: type: "email"

自動化などで API をご利用の場合はご注意ください。この変更は 2026 年 1 月中に適用予定です。

mackerel-container-agent で Amazon ECS マネージドインスタンスの監視を行えるようになりました

mackerel-container-agent が、今年 9 月に発表された Amazon ECS の新しい起動タイプである Amazon ECS マネージドインスタンスに対応しました。v0.13.0 以降のバージョンをお使いいただくと、Amazon ECS マネージドインスタンス上で動作するコンテナのメトリックを Mackerel で監視できるようになります。

mackerel-container-agent の詳細はドキュメントをご覧ください。

各種プラグインや mkr コマンドのアップデート

プラグインや mkr コマンドのリリースを行いましたのでお知らせします。mackerel-plugin-redis、check-redis、mkr dashboards pull のアップデートは Mackerel ユーザーの id:sfujiwara さんにコントリビュートいただきました。ありがとうございます!

mackerel-plugin-redis で Redis / Valkey クラスターノードのメトリック取得に対応しました

mackerel-plugin-redis で Redis / Valkey がクラスターとして動作している場合に、クラスターノードのメトリックを取得できるようになりました。以下の 4 つのグラフ、15 個のメトリックが追加されます。各値の詳細はCLUSTER INFO コマンドのドキュメントをご覧ください。

  • Cluster
    • Known Nodes
    • Size
  • Cluster State
    • State (1: ok, 0: fail)
  • Cluster Slots
    • Slots Assigned
    • Slots OK
    • Slots PFAIL
    • Slots FAIL
  • Cluster Stats
    • Messages PING Sent
    • Messages PONG Sent
    • Messages FAIL Sent
    • Messages Sent
    • Messages PING Received
    • Messages PONG Received
    • Messages FAIL Received
    • Messages Received

mackerel-agent-plugins v0.90.0 より利用可能です。

check-redis で ACL 認証に対応しました

check-redis コマンドに --username オプションを追加しました。--username--password オプションを併用することで、Redis 6.0 以降で導入された ACL 認証を利用できるようになります。

mackerel-check-plugins v0.51.0 より利用可能です。

mkr dashboards pull コマンドで ID 指定によるダッシュボード取得に対応しました

mkr dashboards pull コマンドで --id にダッシュボードの ID を指定することで、特定のダッシュボードのみを取得できるようになりました。個別のダッシュボードの管理や編集をしたい場合に便利にお使いいただけます。

mkr v0.63.0 より利用可能です。

mkr users サブコマンドを追加しました

mkr コマンドにユーザーの一覧を取得できる mkr users サブコマンドを追加しました。--jq オプションにも対応していますので、フィルタを利用して特定のユーザー情報を取得したり、自動化スクリプトに組み込んだりすることで便利にお使いいただけます。

こちらも mkr v0.63.0 より利用可能です。

Kubernetes 1.31 を mackerel-container-agent のサポート対象外としました

2025 年 11 月 26 日に Amazon EKS Kubernetes の標準サポート期間が終了したため、Kubernetes 1.31 を mackerel-container-agent のサポート対象外としました。サポート対象のバージョンはヘルプページをご覧ください。ご理解のほどよろしくお願いします。

もう「なんか遅い」で悩まない!開発者のためのAPM入門

アプリケーションを開発・運用していると、特定の処理が遅い、リクエストごとに応答時間がばらつくなど、「なんか遅い」と感じる場面があります。本資料では、こうした「なんか遅い」と感じる状況に対して、どこから調べればよいのか、何を手がかりにすればよいのかという観点から、APM(アプリケーションパフォーマンスモニタリング)が調査の進め方をどう変えるのかを解説します。

ダウンロードはこちら