たれぱんのびぼーろく

わたしの備忘録、生物学とプログラミングが多いかも

Docker =>fluentd/fluentBit/fireLens

Docker logging driverの出力

output: structured log1

{
  container_id: "id",
  container_name: "name",
  source: "stdout" | "stderr",
  log: "containerLog",
}

FireLens fluentd/bitの出力

firelensで firelensConfiguration.options.enable-ecs-log-metadata = true の場合

{
  ...dockerStructureLog,
  ecs_cluster: "クラスター名",
  ecs_task_arn: "タスクARN",
  ecs_task_definition: "タスク定義名とリビジョン",
}

applicationログを使いたい場合

structured container logをstdout/stderrに吐けばいい.
形式は要相談だけど、jsonにはする.

Tagを指定できないinput

The only input plugin that don't assign Tags is Forward input.
This plugin speaks the Fluentd wire protocol called Forward where every Event already comes with a Tag associated.
Fluent Bit will always use the incoming Tag set by the client.
ref


  1. Source events can have or not have a structure. A structure defines a set of keys and values inside the Event message. ref