Facebook Twitter
お問い合わせ
TOPICS
更新情報
ホーム > ブログ > ソフトウェア > Fluentd > Fluentd(Fluent Package v5) でSyslogをOCI ObjectStorageにリアルタイムに転送する

Fluentd(Fluent Package v5) でSyslogをOCI ObjectStorageにリアルタイムに転送する

Fluentd
ブログ
Oracle Cloud
2025.08.27

Cloudii k.sasakiです。本日は、Fluentd(Fluent Package v5)を使用して、ログをリアルタイムにObjectStorageに転送する、ログ転送基盤を構築します。なお、Fluent Package v6がまもなくリリース予定です。v6リリース後は本日作成した環境をアップデートして、v6環境での動作確認を行い、別の記事で共有いたします。

はじめに

ObjectStorageは、高い耐久性とコスト効率性を持つストレージサービスとして、ログの長期保存先として理想的な選択肢です。AWS S3と高いレベルのAPI互換性を持ち、S3向けに作成されたプログラムを活用することが可能です。

本記事ではFluentdのs3出力プラグインを使用して、SyslogをObjectStorageへリアルタイムに転送する、ログ転送基盤を構築します。

以下のような課題をお持ちの方に参考になれば幸いです。

  • OCIでログの集約・保存基盤を構築したい
  • 障害発生時でも直前までのログを保存したい
  • ログデータを構造化(JSON形式)して保存・分析したい
  • バッチ処理ではなくリアルタイムでログを転送したい

本記事の環境は以下のとおりです。

  • Oracle Linux Server release 9.6 / x86_64
  • fluent-package 5.0.7 LTS版(fluentd 1.16.9)
  • fluent-plugin-s3 (1.7.2)
    ※VCNとVCNのルーティングやファイアーウォール設定は構築済みとします

なお、OCIリソースの作成についての手順の記載は省略しておりますので、実際に作成する際は、Oracle Cloud Infrastructure チュートリアルなど個別のドキュメント/ブログなどをご覧ください。

💭 余談: なぜ OCI Loggingを使用しないか

 OCI Logging (以降 Loggingと表記)を使用する場合でも、Logging -> ServiceConnectorHub->ObjectStorageという構成で、リアルタイムなログ転送と、ObjectStorgeへのログの保存は可能です。
 この構成では、LoggingとObjectStorageでログが二重に保存される点や、ログフォーマットがLogging用にさまざまな情報が付与されたJSON形式になる点に注意が必要です。
 出力するデータの形式を加工することや、転送先をLogging以外にする場合は、Fluentdなどユーザ側で管理できるソフトウェアの導入の検討をお勧めします。

💭 余談: S3互換とは何を指すのか

 Amazon S3と同じHTTPメソッド・URL構造・ヘッダー形式を実装した、API互換性のあるストレージサービスを指して、S3互換のストレージなどと表現されます。RFC標準はなく、AWSの公式API仕様を各社が独自に模倣して実装しています。
 例えば、OCIではリソースに対してコンパートメントというディレクトリのようにリソースを管理する仕組みを採用していますが、これはAWSには存在しないOCI独自の機能です。認証方式なども各社それぞれで独自に実装を行なっています。
 OCIはOCIとしてのObjectStorageのp機能拡張と、S3互換性の維持のそれぞれを満たすために、ObjectStorage用のAPIとS3互換のAPIをそれぞれ提供しています。

Fluentdとは

Fluentdはオープンソースのデータコレクタです。データの収集、加工、転送などそれぞれの機能が、プラグインと呼ばれる単位で構成されており、プラグインを組み合わせることや追加することで、さまざまなフォーマットのデータに対応することができます。(以下の図はFluentd公式より)

Fluentd Architecture

Fluentdのプログラムと、一部プラグインや依存ライブラリまでをパッケージとしてまとめたものがFluent Packageです。今回使用するFluent Package v5は2023年8月に、前身のtd-agent v4の後継パッケージとしてリリースされました。

2025年7月にFluentd v1.19.0がリリースされており、この最新のFluentdを含んだFluent Package v6の提供が近日予定されています。

Fluentdのセットアップ

Fluentd公式の手順にしたがってFluent Package v5をインストールしていきます。

- Step 0: Before Installation

まずは、インストール前の設定からです。ドキュメントに従い設定を追加していきます。

  • Set Up NTP

Leap Status がNormalなので同期した状態です。

[root@ol9 opc]# chronyc tracking
Reference ID    : A9FEA9FE (169.254.169.254)
Stratum         : 3
Ref time (UTC)  : Fri Aug 22 02:05:11 2025
System time     : 0.000000003 seconds slow of NTP time
Last offset     : +0.000003582 seconds
RMS offset      : 0.000194999 seconds
Frequency       : 5.862 ppm fast
Residual freq   : +0.001 ppm
Skew            : 0.032 ppm
Root delay      : 0.000462807 seconds
Root dispersion : 0.000210194 seconds
Update interval : 65.0 seconds
Leap status     : Normal 

  • Increase the Maximum Number of File Descriptors

File Descriptorsの最大値のデフォルト値が1024でしたので、パラメータを追加し、OSを再起動させて反映させました。

[root@ol9 opc]# ulimit -n
65536
[root@ol9 opc]# cat /etc/security/limits.conf | grep -v -e '^\s*#' -e '^\s*$'
root soft nofile 65536
root hard nofile 65536
* soft nofile 65536
* hard nofile 65536

  • Optimize the Network Kernel Parameters

kernelパラメータについても、ドキュメント記載のパラメータを追加して、OSを再起動させて反映させました。"net.core.somaxconn"以降が追加したパラメータです。

[root@ol9 opc]# cat /etc/sysctl.conf | grep -v -e '^\s*#' -e '^\s*$'
kernel.unknown_nmi_panic = 1
net.core.somaxconn = 1024
net.core.netdev_max_backlog = 5000
net.core.rmem_max = 16777216
net.core.wmem_max = 16777216
net.ipv4.tcp_wmem = 4096 12582912 16777216
net.ipv4.tcp_rmem = 4096 12582912 16777216
net.ipv4.tcp_max_syn_backlog = 8096
net.ipv4.tcp_slow_start_after_idle = 0
net.ipv4.tcp_tw_reuse = 1
net.ipv4.ip_local_port_range = 10240 65535
net.ipv4.ip_local_reserved_ports = 24224

  • Use sticky bit symlink/hardlink protection

こちらはデフォルト値のままで設定変更は不要でした。

[root@ol9 opc]# cat /usr/lib/sysctl.d/50-default.conf  | grep links
fs.protected_hardlinks = 1
fs.protected_symlinks = 1

以上でこの手順は完了です。

- Step 1: Install from rpm Repository

OracleLinuxはRPMパッケージを使用できますので、RPMのfluent-package v5のLTS版のインストールを進めます。

[root@ol9 opc]# uname -a
Linux ol9 6.12.0-102.36.5.2.el9uek.x86_64 #1 SMP PREEMPT_DYNAMIC Wed Aug 13 23:57:36 PDT 2025 x86_64 x86_64 x86_64 GNU/Linux

[root@ol9 opc]# curl -fsSL https://toolbelt.treasuredata.com/sh/install-redhat-fluent-package5-lts.sh | sh
==============================
 fluent-package Installation Script
==============================
This script requires superuser access to install rpm packages.
You will be prompted for your password by sudo.
Fluentd Project                                                                          7.6 MB/s | 504 kB     00:00
Last metadata expiration check: 0:00:05 ago on Fri 22 Aug 2025 01:26:23 AM GMT.
Dependencies resolved.
=========================================================================================================================
 Package                       Architecture          Version                     Repository                         Size
=========================================================================================================================
Installing:
 fluent-package                x86_64                5.0.7-1.el9                 fluent-package-lts                 15 M

Transaction Summary
=========================================================================================================================
Install  1 Package

Total download size: 15 M
Installed size: 68 M
Downloading Packages:
fluent-package-5.0.7-1.el9.x86_64.rpm                                                     93 MB/s |  15 MB     00:00
-------------------------------------------------------------------------------------------------------------------------
Total                                                                                     91 MB/s |  15 MB     00:00
Running transaction check
Transaction check succeeded.
Running transaction test
Transaction test succeeded.
Running transaction
  Preparing        :                                                                                                 1/1
  Running scriptlet: fluent-package-5.0.7-1.el9.x86_64                                                               1/1
  Installing       : fluent-package-5.0.7-1.el9.x86_64                                                               1/1
  Running scriptlet: fluent-package-5.0.7-1.el9.x86_64                                                               1/1
Failed to get unit file state for td-agent.service: No such file or directory
inactive
prelink detected. checking /etc/prelink.conf.d/ ...

  Verifying        : fluent-package-5.0.7-1.el9.x86_64                                                               1/1

Installed:
  fluent-package-5.0.7-1.el9.x86_64

Complete!

Installation completed. Happy Logging!

"Installation completed. Happy Logging!"と表示され、無事インストールできました。

インストール時の出力を確認すると、fluent-packge単体でインストールされ、インストール時に別なプログラムのインストールも要求されなかったことがわかります。

FluentdはRubyで動作しますが、Fluent Package v5にはRuby 3.2が同梱されており、Fluendは独立したRubyで動作します。必要なプログラムが同梱されているため、環境を気にせずパッケージ単体で導入できることは素晴らしいですね。

手順にはありませんが、リポジトリの追加も確認しました。

[root@ol9 opc]# cat /etc/yum.repos.d/fluent-package-lts.repo
[fluent-package-lts]
name=Fluentd Project
baseurl=https://packages.treasuredata.com/lts/5/redhat/$releasever/$basearch
enabled=1
gpgcheck=1
gpgkey=https://packages.treasuredata.com/GPG-KEY-td-agent
       https://packages.treasuredata.com/GPG-KEY-fluent-package

Fluentd のserviceファイル(/usr/lib/systemd/system/fluentd.service)を見てみると、fluentdグループのfluendユーザでプロセスが起動することがわかります。こちらも手順にはありませんが、OSの各種ログを読み込むことができるように、root権限で動作するように修正を加えました。

[root@ol9] vi /usr/lib/systemd/system/fluentd.service

# 修正前
[Service]
User=fluentd
Group=fluentd
# 修正後
[Service]
User=root
Group=root

# 修正完了後更新を反映
[root@ol9] systemctl daemon-reload

以上で、インストールから初期セットアップは完了です。

- Step 2: Launch Daemon

次はFluentdの起動です。

[root@ol9 opc]# systemctl enable fluentd
Created symlink /etc/systemd/system/td-agent.service → /usr/lib/systemd/system/fluentd.service.
Created symlink /etc/systemd/system/multi-user.target.wants/fluentd.service → /usr/lib/systemd/system/fluentd.service.

[root@ol9 opc]# systemctl start fluentd
[root@ol9 opc]# systemctl status fluentd
● fluentd.service - fluentd: All in one package of Fluentd
     Loaded: loaded (/usr/lib/systemd/system/fluentd.service; enabled; preset: disabled)
     Active: active (running) since Fri 2025-08-22 01:30:15 GMT; 17s ago
       Docs: https://docs.fluentd.org/
    Process: 12577 ExecStart=/opt/fluent/bin/fluentd --log $FLUENT_PACKAGE_LOG_FILE --daemon /var/run/fluent/fluentd.pid $FLUENT_PA>
   Main PID: 12583 (fluentd)
      Tasks: 9 (limit: 21259)
     Memory: 80.3M
        CPU: 1.305s
     CGroup: /system.slice/fluentd.service
             ├─12583 /opt/fluent/bin/ruby /opt/fluent/bin/fluentd --log /var/log/fluent/fluentd.log --daemon /var/run/fluent/fluent>
             └─12586 /opt/fluent/bin/ruby -Eascii-8bit:ascii-8bit /opt/fluent/bin/fluentd --log /var/log/fluent/fluentd.log --daemo>

Aug 22 01:30:14 ol9 systemd[1]: Starting fluentd: All in one package of Fluentd...
Aug 22 01:30:15 ol9 systemd[1]: Started fluentd: All in one package of Fluentd.

起動が完了しましたので、プロセスをみてみます。

[root@ol9 opc]# ps aux | grep fluentd
root        2271  0.0  1.2 356456 45728 ?        Ssl  01:45   0:01 /opt/unified-monitoring-agent/embedded/bin/ruby /opt/unified-monitoring-agent/embedded/bin/fluentd --log /var/log/unified-monitoring-agent/unified-monitoring-agent.log --log-rotate-size 1048576 --log-rotate-age 10
root        3577  0.0  1.0 330940 37852 ?        S    01:45   0:00 /opt/unified-monitoring-agent/embedded/bin/ruby -Eascii-8bit:ascii-8bit /opt/unified-monitoring-agent/embedded/bin/fluentd --log /var/log/unified-monitoring-agent/unified-monitoring-agent.log --log-rotate-size 1048576 --log-rotate-age 10 --under-supervisor
root     3981  0.0  1.2 387588 45596 ?        Sl   01:45   0:00 /opt/fluent/bin/ruby /opt/fluent/bin/fluentd --log /var/log/fluent/fluentd.log --daemon /var/run/fluent/fluentd.pid
root     3987  0.0  1.5 388756 53116 ?        Sl   01:45   0:01 /opt/fluent/bin/ruby -Eascii-8bit:ascii-8bit /opt/fluent/bin/fluentd --log /var/log/fluent/fluentd.log --daemon /var/run/fluent/fluentd.pid --under-supervisor
root        6263  0.0  0.4 221796 14296 pts/0    S+   02:24   0:00 grep --color=auto fluentd

PID3981とPID3987が今回インストールしたfluentdのプロセスです。

--under-supervisorオプションがついたPID3987がログ収集や加工、転送などの処理を行うworkerプロセスで、ついていないPID3981がfluentdを制御するsupervisorプロセスです。

OCI上のOracleLinux環境では、Unified Monitoring AgentというFluentdベースのエージェントも存在し、そちらのプロセスも表示されていますが、今回インストールしたFluentdとは別になりますので、確認する際はご注意ください。

- Step 3: Post Sample Logs via HTTP

デフォルトの状態で設定ファイルが、HTTPエンドポイントからログを受け取り、fluentd.logファイルにログを追記するとのことなので、記載のコマンドを実行してみます。

# curl -X POST -d 'json={"json":"message"}' http://localhost:8888/debug.test
# tail -n 1 /var/log/fluent/fluentd.log
2025-08-22 02:37:34.950468815 +0000 debug.test: {"json":"message"}

無事記録されました。正常に動作しています。

SyslogをリアルタイムにObjectStorageに転送する

Fluentd自体のセットアップが完了したので、ObjectStorageへログが転送できるように設定を進めていきます。

ObjectStorageへのログ転送

ObjectStorageへの転送には、Fluent Packageに同梱されているfluent-plugin-s3を使用します。
fluent-plugin-s3はaws-sdkを使用して構成されたAWS S3のクライアントであるため、aws-sdk関連のパッケージも同梱されています。

# fluentd --version
fluent-package 5.0.7 fluentd 1.16.9 (daccbc6f0551611c65d3ce7efd81dfc7b693f3e3)

# fluent-gem list | grep fluent-plugin-s3
fluent-plugin-s3 (1.7.2)

# fluent-gem list | grep aws-sdk
aws-sdk-core (3.178.0)
aws-sdk-kms (1.71.0)
aws-sdk-s3 (1.129.0)
aws-sdk-sqs (1.61.0)

以下の3つのSTEPで設定を進めます。

  • STEP1 バケットの作成
  • STEP2 資格情報の付与
  • STEP3 Fluentd設定ファイルの作成
  • STEP4 動作確認

なお、各OCIリソースの作成手順については、本記事の主題ではないので割愛し、設定内容だけ示しています。

- STEP1 バケットの作成

オプションをデフォルトで作成し、パブリックに公開されていないバケットを作成しました。

# バケット
bucket
  - name: obs-nrt

- STEP2 資格情報の付与

今回使用するプラグインはS3に最適化されており、OCIのS3互換APIを使用してObjectStorageへアクセスする方式となり、インスタンスプリンシパルを使用した認証がサポートされていないため、顧客秘密キー(旧S3互換APIキー)を使用したアクセスが必要となります。

最終的にユーザ、グループ、顧客秘密キーを以下のように作成しました。

# IAMユーザ
users:
  - name: fluentd
    description: "Fluentdサービスアカウントユーザの操作用"
    groups:
      - fluentd-grp
    customer_secret_keys:
      - name: fluentd-key
        description: "Fluentd Object Storage アクセス用秘密キー"
        access_key: "<アクセスキー>"
        secret_key: "<シークレットキー>"

# IAMグループ
groups:
  - name: fluentd-grp
    description: "Fluentdサービス用グループ "
    members:
      - fluentd

権限については、データの書き込みが必要なので、 manage objectsの権限と、バケットの存在確認を行う動作のために、inspect bucketの権限を付与します。バケットが存在しない場合にはバケットを作成する動作となるようですが、勝手に自動作成はさせたくないので、inspectまでの権限としました。

最終的にステートメントを以下のようにして、ポリシーを作成しました。

# OCI IAMリソース構成
# IAMポリシー
policies:
  - name: fluentd-grp-policy
    description: "FluentdグループのObject Storage (obs-nrt) アクセス権限"
    statements:
      - "Allow group fluentd-grp to manage objects in compartment id <コンパートメントID> where target.bucket.name='obs-nrt'"
      - "Allow group fluentd-grp to inspect buckets in compartment id <コンパートメントID> where target.bucket.name='obs-nrt'"

これで、資格情報やリソースについては準備完了です。

- STEP3 Fluentd設定ファイルの作成

Fluentdはプラグインを組み合わせることで柔軟にデータの収集、加工、転送を行うことができます。収集はinputプラグイン、転送はoutputプラグインなどいくつかのカテゴリに分かれており、その中で用途にあったものを選択することができます。(以下の図はFluentd公式より)

Pluggable Architecture

Fluentdの設定ファイルはApache WebServerの設定ファイルと似たディレクティブ構成となっており、設定ファイルの分割も可能です。今回は設定を管理しやすくするため、収集対象のファイルごとに設定ファイルを分割して構成します。

ディレクトリ構成は以下のとおりです。

[root@ol9 opc]# tree /etc/fluent
/etc/fluent
├── conf.d
│   └── syslog.conf
├── fluentd.conf
├── fluentd.conf_bk
└── plugin

起動時に読み込まれるfluent.confファイルの内容は以下のとおりです。

# ===== システム全体設定 =====
<system>
  log_level info    # Fluentd自体のログレベル設定(fatal/error/warn/info/debug/traceから選択)
                    # info: 起動情報や基本的な動作ログを出力
</system>

@include conf.d/syslog.conf  # conf.d/syslog.confの読み込み

includeで読み込まれる syslog.confファイルの内容は以下のとおりです。
source ディレクティブがログデータ収集を行うinputプラグイン、match ディレクティブがログデータの転送を行うoutputプラグインなど、プラグインとディレクティブが対応しています。

# ===== ソース設定: システムログの収集 =====
<source>
  @type tail                                    # tail inputプラグイン(ファイルの追記を監視)
  path /var/log/messages                        # 監視対象のログファイルパス
  pos_file /var/log/fluent/syslog_messages.pos  # 読み取り位置を記録するファイル
  format syslog                                  # ログのフォーマット形式を指定(syslog形式をパース)
  tag syslog.messages                            # このソースから出力されるイベントに付与するタグ
</source>

# ===== マッチ設定: OCI Object Storageへの転送 =====
<match syslog.messages>
  @type s3                                       # S3 outputプラグイン(OCI Object StorageのS3互換API対応)

  # 認証情報
  aws_key_id "<顧客秘密キー:アクセスキー>"         # 顧客秘密キー情報
  aws_sec_key "<顧客秘密キー:シークレット>"        # 顧客秘密キー情報

  # 接続先設定
  s3_bucket obs-nrt                             # 転送先のバケット名
  s3_region ap-tokyo-1                          # リージョン指定(OCIの東京リージョン)
  s3_endpoint https://<namespace>.compat.objectstorage.ap-tokyo-1.oraclecloud.com  # OCIのObject Storage S3互換APIエンドポイント

  # 接続オプション
  force_path_style true                          # ObjectStorageではパス・スタイルURLのみサポート

  # オブジェクトのパス設定
  path logs/${tag}/%Y/%m/%d/                    # Object Storage内のパス構造

  # 出力フォーマット設定
  <format>
    @type json                                  # ログをJSON形式で出力
  </format>

  # タイムスタンプの挿入設定
  <inject>
    time_key time                               # タイムスタンプを格納するフィールド名
    time_type string                            # タイムスタンプの型(文字列として出力)
    time_format %Y-%m-%dT%H:%M:%S%z             # ISO 8601形式でタイムスタンプをフォーマット
  </inject>

  # バッファリング設定
  <buffer tag, time>                            # tag と time でチャンク(ログデータを一時的にまとめる単位)を分ける
    @type file                                  # ファイルバッファを使用
    path /var/log/fluent/buffer/syslog.messages # ファイルバッファの保存先ディレクトリ (ファイル自体はチャンク単位で生成)
    timekey 60                                  # 60秒ごとにチャンクを切り替え
    timekey_wait 10                             # チャンクを切り替え後、10秒後にs3プラグインで転送開始
    timekey_use_utc true                        # UTC時刻を使用
  </buffer>
</match>

設定ファイルの作成が完了したので、動作確認に進みます。

- STEP4 動作確認

OCIとFluentdそれぞれのリソース作成や設定が完了したため、Fluentdを再起動して設定を反映させます。

[root@ol9 opc]# systemctl restart fluentd

/var/log/fluent/fluent.logで起動時のログメッセージを確認したところ、[warn]メッセージが含まれていました。

非推奨扱いのforce_path_style〜についての警告は、OCI環境では設定が必須のパラメータなので許容します。s3_object_key_format〜についての警告は ログ出力に含まれる{index}がデフォルトで{chunk_id}となったというメッセージで、これも通知的な情報なので問題ありません。

[root@ol9 opc]#  tail -n 300 /var/log/fluent/fluentd.log
#(省略)
2025-08-24 23:22:06 +0000 [info]: starting fluentd-1.16.9 pid=8641 ruby="3.2.8"
2025-08-24 23:22:06 +0000 [info]: spawn command to main:  cmdline=["/opt/fluent/bin/ruby", "-Eascii-8bit:ascii-8bit", "/opt/fluent/bin/fluentd", "--log", "/var/log/fluent/fluentd.log", "--daemon", "/var/run/fluent/fluentd.pid", "--under-supervisor"]
2025-08-24 23:22:06 +0000 [info]: #0 init worker0 logger path="/var/log/fluent/fluentd.log" rotate_age=nil rotate_size=nil
2025-08-24 23:22:06 +0000 [info]: adding match pattern="syslog.messages" type="s3"
2025-08-24 23:22:07 +0000 [warn]: #0 'force_path_style' parameter is deprecated: S3 will drop path style API in 2020: See https://aws.amazon.com/blogs/aws/amazon-s3-path-deprecation-plan-the-rest-of-the-story/
2025-08-24 23:22:07 +0000 [warn]: #0 The default value of s3_object_key_format will use ${chunk_id} instead of %{index} to avoid object conflict in v2
2025-08-24 23:22:07 +0000 [info]: adding source type="tail"
2025-08-24 23:22:07 +0000 [info]: #0 starting fluentd worker pid=8650 ppid=8647 worker=0
2025-08-24 23:22:07 +0000 [info]: #0 following tail of /var/log/messages
2025-08-24 23:22:07 +0000 [info]: #0 fluentd worker is now running worker=0

ログデータが、ObjectStorageへ転送されていることを確認できました。

obs-nrt上のログ

SyslogとObjectStorage上のログデータで対応した箇所を以下に示します。

# Syslog 上のログデータ
Aug 24 23:42:03 ol9 systemd[9594]: Queued start job for default target Main User Target.
Aug 24 23:42:03 ol9 systemd[9594]: Created slice User Application Slice.
Aug 24 23:42:03 ol9 systemd[9594]: Mark boot as successful after the user session has run 2 minutes was skipped because of an unmet condition check (ConditionUser=!@system).
Aug 24 23:42:03 ol9 systemd[9594]: Started Daily Cleanup of User's Temporary Directories.
Aug 24 23:42:03 ol9 systemd[9594]: Reached target Paths.

# ObjectStorage上のログデータ
{"host":"ol9","ident":"systemd","pid":"9594","message":"Queued start job for default target Main User Target.","time":"2025-08-24T23:42:03+0000"}
{"host":"ol9","ident":"systemd","pid":"9594","message":"Created slice User Application Slice.","time":"2025-08-24T23:42:03+0000"}
{"host":"ol9","ident":"systemd","pid":"9594","message":"Mark boot as successful after the user session has run 2 minutes was skipped because of an unmet condition check (ConditionUser=!@system).","time":"2025-08-24T23:42:03+0000"}
{"host":"ol9","ident":"systemd","pid":"9594","message":"Started Daily Cleanup of User's Temporary Directories.","time":"2025-08-24T23:42:03+0000"}
{"host":"ol9","ident":"systemd","pid":"9594","message":"Reached target Paths.","time":"2025-08-24T23:42:03+0000"}

以上で、設定は完了となります。

さいごに

Fluentdのs3出力プラグインを使用したObjectStrageへのリアルタイムなログ転送を行うことができました。

Fluentdの導入自体は非常にシンプルで、取り組みやすく、拡張性も高いため、ログ管理の有力な選択肢になると感じました。特に、Fluentd とOCIの連携については、OCI LoggingやOCI LogAnalytics用のプラグインであったり、Fluentdのログ収集メトリクスをOCI Monitoringにアップロードするなど、マネージドサービスとの連携などもございますので、これから取り上げていきたいと考えています。

最後までご覧いただきありがとうございました。皆様のログ管理に関する課題の参考になれば幸いです。

参考記事

参考記事のリストです。本記事でリンクを記載していない参考記事も含みます。

  • Fluentd 関連

What is Fluentd?

Fluentd v1.19.0 リリース - 運用コスト削減

Fluentdの安定版パッケージ新シリーズ Fluent Package v6 LTS リリース - 運用コスト・ランニングコスト削減

Fluent Package LTS v5.0 (Fluentd長期サポートパッケージ) リリース自慢会 *Youtube

RPM Package (Red Hat Linux)*インストール手順

Futures / fluent-package v5 *同梱Rubyのversion

s3*s3 plugin

以上


この記事が気に入ったら
「いいね!」

この記事を書いた人


関連コンテンツ

CONTACT お問い合わせ

Cloudiiのサービスやプロダクトについて
興味をお持ちの方は、
お気軽にお問い合わせください。