AWS ECS で perf-record する方法

EC2-backed ならできた。 Fargate との compatibility は諦めてね。新しい Task 定義を作成して、EC2-backed に Service を切り替えます。

CAP_SYS_ADMINをつける

これを見よ: docs.aws.amazon.com github.com docs.aws.amazon.com

要は Task definition に以下を追加し、Fargate との別れを告げる。

            "linuxParameters": {
                  "capabilities": {
                      "add": ["SYS_ADMIN"]
                  }
            },

他の方法

だめな場合

これを確認せよ:

  • /proc/sys/kernel/perf_event_paranoid を 2以下にする。
  • ubuntu などから COPY /usr/bin/perf perf などした場合、それはただのラッパースクリプトである。
  • 上記すべての方法は Fargate では無理