システム テーブルのレポート
デフォルトでは、システム テーブルはレポート モジュールの制限を受けます。
これらのテーブルには次のものが含まれますが、これらに限定されません。
- システム監査 [
sys_audit] - ログ [
syslog] - トランザクションログ [
syslog_transaction] - 添付ファイル [
sys_attachment] - メール [
sys_email]
この理由は 、通常sys_audit どのインスタンスでも最大のテーブルであるためです。中規模のインスタンスでも監査テーブルが数ギガバイトになることは珍しいことではありません。大規模な環境では、このテーブルが 50 GB 以上に及ぶこともあります。
sys_auditテーブルにプログラムでアクセスすると、クエリパターンがどのようになるかがわかるため、クエリに一致する適切なデータインデックスを追加しました。たとえば、インシデントの履歴などを表示するときに、データベースでインデックスを使用することで、そのクエリに必要な数十行を効率的に取り出すことができます。
ただし、自由形式のレポートでは、クエリ パターンがどのようになるかを予測することはできません。フィールド名でグループ化したり、oldvalue でソートしたりしたい場合があります。したがって、クエリーがインデックス付きのクエリになることはありません。実質的な結果として、複数のギガバイトのファイルをスキャンするようデータベースに要求することになりますが、こうした操作は次の理由から適切ではありません。
- 処理が遅いため、レポートの実行に容認できないほどの長い時間がかかります。
- データベースがテーブルをスキャンしている間、他のクエリーが必要なリソースを取得できないため、インスタンスの速度が低下したり、インスタンスが使用できなくなることもあります。
システムテーブルのレポートを作成する必要がある場合は、 glide.ui.permitted_tables プロパティに追加できます。次のように移動する。 をクリックし、レポート可能な List of system tables (beginning with "sys_" comma separated) (レポート可能なシステムテーブルのリスト) を見つけます。デフォルトでは、システム テーブルはレポート不可能です。」というラベルのプロパティーを探します。この操作を行う際は十分に注意してください。