Mage-OSの管理者アクションログ機能とは

Mage-OSでは管理者が管理画面でどのような操作を行ったかを視覚化する機能が付属しています。
同じような機能はAdobe Commerceにも以前から付属していますが、Mage-OSとAdobe Commerceでは多少機能面で差があります。

今回はMage-OSとAdobe Commerceの双方の機能を見ながら、違う箇所について解説していきたいと思います。

Mage-OSに付属する管理者アクションログ機能

Mage-OSに付属する管理者アクションログ機能は、

  • 操作ログ
  • ログインログ

の2つの機能に分かれています。

前者については、設定で

  • データ更新(作成・更新・削除)のみ
  • 画面の表示を記録

を切り替えることができます。

Mage-OS管理者アクションログ設定

とくに「画面の表示を記録」はデフォルトではオフなので設定で有効化する必要があります。

ログデータの表示

ログを表示するための機能は、管理画面の「システム」の下に用意されています。

管理画面メニュー

Activity LogとLogin Logがありますが、どちらもアクセスすると一覧が表示されます。

Mage-OS管理者アクションログ一覧

ログの一覧の右端をクリックすると、ログの内容が表示されます。

操作ログの詳細

データの作成・更新などの場合は、どのような変更があったかを見ることができるので、変なデータ更新があった際に追跡することができます。

ログデータの自動クリーニング

Mage-OSに付属する管理者アクションログは、デフォルトでは30日でログデータがクリーニングされます。
延長は設定で可能なので、必要に応じて延長するとよいでしょう。
ただし、あまり長い期間にするとログデータが肥大化して、データベースのパフォーマンスが低下しますので注意が必要です。

ログ対象操作・データ項目の定義

どの機能・操作をログ対象とするかについては、adminiactivity.xmlというファイルで定義ができるようになっています。
このあたりのカスタマイズ方法については、README.mdに書かれているので、一度読んでみるとよいでしょう。

Adobe Commerceに付属する管理者アクションログ

さて、続いてはAdobe Commerceに付属する管理者アクションログ機能です。
Adobe Commerceの側は管理者アクションログはひとつで、記録対象のすべての操作が同じ場所で確認できます。
(アーカイブは過去ログです)

Adobe Commerce管理者アクションログ

データの変更に対する差分の表示もMage-OSにある機能と概ね同じですが、Adobe Commerceのほうは完全に別画面となっています。

ログデータのアーカイブ機能

Adobe Commerceの管理者アクションログは、自動的に古くなったログデータをアーカイブする機能が用意されています。
こちらはデフォルトだと、60日を経過したログデータを日次・週次・月次のレベルでアーカイブします。

ログアーカイブ設定

ログ対象操作・データ項目の定義

Mage-OSと同様に、XMLで定義します。なお、Adobe Commerceの方はlogging.xmlで定義します。
このファイルは、

  • logging.xsd
  • logging_file.xsd

の2つのファイルのいずれかで行います。XSDの定義内容はほぼ同じなので、どちらを使ってもエラーにはなりません。
(厳密には必須属性などが異なりますが、きちんと書けば問題ありません)

まとめ

Mage-OSに実装された管理者アクションログは、Adobe Commerceに用意されたものと概ね遜色ない機能となっています。
この機能はMagento Open Sourceにもインストール可能となっているため、管理者アクションログの記録が必要な場合に導入するとよいでしょう。

ただし、Mage-OSの管理者アクションログは古いログデータの保全機能は無いため、ログデータの保全については別途考える必要があります。