Log Audit Serviceアプリケーションを使用すると、複数のアカウントにわたってAlibaba Cloudサービスからログを収集し、ログを集中的に保存できます。 Alibaba Cloudサービスでログ監査機能が有効になっている場合、Simple log serviceはデフォルトで、指定された条件を満たすすべてのログをサービスから収集します。 ログ収集ポリシーを設定して、ログを収集するアカウント、リージョン、およびインスタンスを指定できます。 これにより、きめ細かいレベルでログを収集できます。 このトピックでは、ログ収集ポリシーを設定する方法について説明します。
対応 Alibaba Cloud サービス
ApsaraDB RDS、PolarDB-X 1.0、PolarDB、Server Load Balancer (SLB) 、Application Load Balancer (ALB) 、Virtual Private Cloud (VPC) 、Alibaba Cloud DNS (DNS) 、Container Service for Kubernetes (ACK) のログ収集ポリシーを設定できます。.
Alibaba Cloudサービス | ログソース | プロパティ | 説明 |
ApsaraDB RDS | ApsaraDB RDS インスタンス | account.id | ApsaraDB RDSインスタンスが属するAlibaba CloudアカウントのID。 |
region | ApsaraDB RDSインスタンスが存在するリージョンのID。 例: cn-shanghai. | ||
instance.id | ApsaraDB RDSインスタンスのID。 | ||
instance.name | ApsaraDB RDSインスタンスの名前。 | ||
instance.db_type | ApsaraDB RDSインスタンスで作成されるデータベースのタイプ。 有効な値: mysql、pgsql、およびmssql。 | ||
instance.db_version | データベースのバージョン。 例: 8.0。 | ||
タグ。* | カスタムタグ。 tag.* プロパティのアスタリスク (*) をカスタムタグ名に置き換えることができます。 | ||
PolarDB | PolarDBクラスター | account.id | PolarDBクラスターが属するAlibaba CloudアカウントのID。 |
region | PolarDBクラスターが存在するリージョンのID。 例: cn-shanghai. | ||
cluster.id | PolarDB クラスターの ID。 | ||
cluster.name | PolarDBクラスターの名前。 | ||
cluster.db_type | PolarDBクラスターでサポートされているデータベースタイプ。 有効値: MySQL。 | ||
クラスター. db_version | データベースのバージョン。 有効な値: 5.6、5.7、8.0 | ||
タグ。* | カスタムタグ。 tag.* プロパティのアスタリスク (*) をカスタムタグ名に置き換えることができます。 | ||
PolarDB-X 1.0 | PolarDB-X 1.0 インスタンス | account.id | PolarDB-X 1.0インスタンスが属するAlibaba CloudアカウントのID。 |
region | PolarDB-X 1.0インスタンスが存在するリージョンのID。 例: cn-shanghai. | ||
instance.id | PolarDB-X 1.0インスタンスのID。 | ||
instance.name | PolarDB-X 1.0インスタンスの名前。 | ||
SLB | SLBインスタンス | account.id | SLBインスタンスが属するAlibaba CloudアカウントのID。 |
region | SLBインスタンスが存在するリージョンのID。 例: cn-shanghai. | ||
instance.id | SLBインスタンスのID。 | ||
instance.name | SLBインスタンスの名前。 | ||
instance.net work_type | SLBインスタンスのネットワークタイプ。 有効な値: vpcとclassic。 | ||
instance.vpc_id | SLBインスタンスが存在するVPCのID。 | ||
インスタンス. address_type | SLB インスタンスのネットワークタイプです。 有効な値: イントラネットとインターネット。 | ||
タグ。* | カスタムタグ。 tag.* プロパティのアスタリスク (*) をカスタムタグ名に置き換えることができます。 | ||
ALB | ALBインスタンス | account.id | ALBインスタンスが属するAlibaba CloudアカウントのID。 |
region | ALBインスタンスが存在するリージョンのID。 例: cn-shanghai. | ||
instance.id | ALBインスタンスのID。 | ||
instance.name | ALBインスタンスの名前。 | ||
instance.vpc_id | ALBインスタンスが存在するVPCのID。 | ||
インスタンス. address_type | ALBインスタンスのアドレスタイプ。 有効な値: イントラネットとインターネット。 | ||
タグ。* | カスタムタグ。 tag.* プロパティのアスタリスク (*) をカスタムタグ名に置き換えることができます。 | ||
プライベートDNS | VPC | account.id | VPCが属するAlibaba CloudアカウントのID。 |
region | VPCが存在するリージョンのID。 | ||
instance.id | VPC の ID です。 | ||
instance.name | VPC の ID 。 | ||
タグ。* | カスタムタグ。 tag.* プロパティのアスタリスク (*) をカスタムタグ名に置き換えることができます。 | ||
パブリックDNSおよびGlobal Traffic Manager | ドメイン名 | account.id | ドメイン名所有者のAlibaba CloudアカウントID。 |
domain | ドメイン名。 | ||
ACK (Kubernetes監査ログ) | Kubernetes クラスター | region | Kubernetesクラスターが存在するリージョンのID。 例: cn-shanghai. |
cluster.id | KubernetesクラスターのID。 | ||
cluster.name | Kubernetesクラスターの名前。 | ||
cluster.type | Kubernetesクラスターのタイプ。 有効な値: Kubernetes、ManagedKubernetes、およびASK。 | ||
cluster.net work_mode | Kubernetesクラスターのネットワークタイプ。 有効な値: vpcとclassic。 | ||
タグ。* | カスタムタグ。 tag.* プロパティのアスタリスク (*) をカスタムタグ名に置き換えることができます。 | ||
ACK (Kubernetesイベントセンター) | Kubernetes クラスター | region | Kubernetesクラスターが存在するリージョンのID。 例: cn-shanghai. |
cluster.id | KubernetesクラスターのID。 | ||
cluster.name | Kubernetesクラスターの名前。 | ||
cluster.type | Kubernetesクラスターのタイプ。 有効な値: Kubernetes、ManagedKubernetes、およびASK。 | ||
cluster.net work_mode | Kubernetesクラスターのネットワークタイプ。 有効な値: vpcとclassic。 | ||
タグ。* | カスタムタグ。 tag.* プロパティのアスタリスク (*) をカスタムタグ名に置き換えることができます。 | ||
ACK (Ingressアクセスログ) | Kubernetes クラスター | region | Kubernetesクラスターが存在するリージョンのID。 例: cn-shanghai. |
cluster.id | KubernetesクラスターのID。 | ||
cluster.name | Kubernetesクラスターの名前。 | ||
cluster.type | Kubernetesクラスターのタイプ。 有効な値: Kubernetes、ManagedKubernetes、およびASK。 | ||
cluster.net work_mode | Kubernetesクラスターのネットワークタイプ。 有効な値: vpcとclassic。 | ||
タグ。* | カスタムタグ。 tag.* プロパティのアスタリスク (*) をカスタムタグ名に置き換えることができます。 | ||
log.* | ログのコンテンツ。 |
ログ収集ポリシーの設定
にログインします。Simple Log Serviceコンソール.
[ログアプリケーション] セクションで、[監査とセキュリティ] タブをクリックします。 次に、[ログ監査サービス] をクリックします。
を選択します。 表示されるページの右上隅にある [変更] をクリックします。
ログ収集ポリシーを設定するAlibaba Cloudサービスを見つけ、収集ポリシー.
ログ収集ポリシーを設定します。
基本編集モードまたは詳細編集モードでログ収集ポリシーを設定できます。 基本編集モードを使用して、単純なログ収集ポリシーを設定できます。 基本編集モードがビジネス要件を満たしていない場合は、詳細編集モードを有効にできます。 詳細編集モードでは、複雑なログ収集ポリシーを柔軟に設定できます。
説明ビジネスシナリオに基づいて複数のポリシーを設定できます。
詳細編集モードでは、ポリシーステートメントを編集できます。 ポリシーステートメントを編集した後、基本編集モードに直接戻ることはできません。
基本編集モードに戻るには、すべてのポリシーステートメントを削除して変更を保存する必要があります。 次に、[収集ポリシー] をクリックします。
基本編集モードでログ収集ポリシーを設定します。
[ポリシーの追加] セクションでパラメーターを設定し、[ポリシーの追加] をクリックします。 下表に、各パラメーターを説明します。
説明[Default Collection Policy] をオンにすると、コレクションポリシーの最後の行は
accept "*"(Default policy-Accept)
になります。 デフォルトのコレクションポリシーをオフにすると、コレクションポリシーの最後の行はdrop "*" (デフォルトのポリシー-破棄)
になります。パラメーター
説明
Action
Simple Log Serviceがログ収集ポリシーに基づいてログを収集するときに実行されるアクション。 詳細については、「ポリシー構文」をご参照ください。
プロパティ
ログソースのプロパティ。 使用可能なプロパティは、使用するログソースによって異なります。 詳細については、「サポートされているAlibaba Cloudサービス」をご参照ください。
演算子
オペレータに対応するマッチモード。 完全一致を選択した場合、演算子は=です。 詳細については、「ポリシー構文」をご参照ください。
プロパティ値
プロパティの値 プロパティには複数の値を指定できます。
[追加されたポリシー] セクションで、設定したログ収集ポリシーの詳細を確認します。
ポリシーを変更し、ポリシーの順序を変更できます。
ポリシーを変更するには、ポリシーの右側にある [編集] をクリックします。
ポリシーの順序を変更するには、ポリシーの右側にある上向きまたは下向きの矢印をクリックします。
設定を確認し、[OK] をクリックします。
高度な編集モードでログ収集ポリシーを設定します。
[詳細編集モード] をオンにします。
[ルール] フィールドで、ログ収集ポリシーを設定し、[OK] をクリックします。
ポリシー構文の詳細については、「ポリシー構文」をご参照ください。
グローバル設定ページをクリックします。OK.
ポリシー構文
操作
維持: ログソースがポリシーと一致する場合、Simple log Serviceはログソースを次のポリシーと照合しようとし、後続のポリシーに基づいてログを収集するかどうかを決定します。 ログソースがポリシーと一致しない場合、Simple log Serviceはログを収集せず、ログソースと後続のポリシーとの照合を試みません。
ドロップ: ログソースがポリシーと一致する場合、Simple log Serviceはログを収集せず、ログソースと後続のポリシーとの照合を試みません。 ログソースがポリシーと一致しない場合、Simple log Serviceはログソースを次のポリシーと照合しようとし、後続のポリシーに基づいてログを収集するかどうかを決定します。
同意: ログソースがポリシーと一致する場合、Simple log Serviceはログを収集し、ログソースと後続のポリシーとの照合を試みません。 ログソースがポリシーと一致しない場合、Simple log Serviceはログソースを次のポリシーと照合しようとし、後続のポリシーに基づいてログを収集するかどうかを決定します。
マッチングモード
マッチングモード
説明
完全一致
完全一致は文字列に基づいて実行されます。
演算子: ==。
例: keep instance.db_type == "mysql" このポリシーは、ApsaraDB RDS for MySQLインスタンスに対してtrueに評価されます。
ワイルドカード
データはワイルドカード文字に基づいて照合されます。 ワイルドカード文字には、アスタリスク (*) と疑問符 (?) が含まれます。 アスタリスク (*) は、0文字または複数文字を指定します。 疑問符 (?) は1文字を指定します。
演算子: ==。
例:
kee p instance.name == "backend *" このポリシーは、名前がバックエンドで始まるインスタンスに対してtrueに評価されます。
kee p instance.name == "active?" このポリシーは、名前がactiveとランダムな文字で始まるインスタンスに対してtrueに評価されます。
Regexマッチ
データは正規表現に基づいて照合されます。
演算子: ~=。
例: kee p instance.name ~= "^\d +$" このポリシーは、名前に数字のみが含まれるインスタンスに対してtrueに評価されます。
説明デフォルトでは、Simple Log Serviceは部分一致を実行します。 完全一致を有効にするには、正規表現の接頭辞にキャレット (^) を付け、正規表現の接尾辞にドル記号 ($) を付ける必要があります。
数値比較
数値の比較。
演算子:
直接比較用の演算子: greater-than (>) 、greater-than-or-equal to (>=) 、equal-to (=) 、less-than-or-equal-to (<=) 、およびless-than (<) 。
閉じた間隔内の数値を比較するために使用される演算子。 例:: [*, 100] アスタリスク (*) を使用して、無限の間隔を指定できます。
例:
keep tag.level >= 2です。 このポリシーは、tag.levelプロパティの値が2以上のインスタンスに対してtrueに評価されます。
keep tag.level : [*, 10] このポリシーは、tag.levelプロパティの値が10以下であるインスタンスに対してtrueに評価されます。
keep tag.level : [1, 10] このポリシーは、tag.levelプロパティの値がクローズ区間 [1, 10] 内にあるインスタンスに対してtrueに評価されます。
論理演算子
キーワード:
および、and、および &&: キーワードは大文字と小文字を区別しません。
またはおよびor: キーワードは大文字と小文字を区別しません。
not、NOT、および感嘆符 (!): キーワードは大文字と小文字を区別しません。
例:
keep (tag.level > 10) and (region == "cn-shanghai") このポリシーは、tag.levelプロパティの値が10より大きく、中国 (上海) リージョンにあるインスタンスに対してtrueと評価されます。
keep (tag.level > 10) または (region == "cn-shanghai") このポリシーは、tag.levelプロパティの値が10より大きいインスタンス、または中国 (上海) リージョンにあるインスタンスに対してtrueと評価されます。
keep not region == "cn-shanghai" このポリシーは、中国 (上海) リージョンに存在しないインスタンスに対してtrueと評価されます。
グローバルマッチ
ログ収集ポリシーでプロパティが指定されていない場合、システムはログソースをポリシーで使用可能なすべてのプロパティと照合します。 例:
"abc" を保持します。 このポリシーは、abc文字列を含むログに対してtrueに評価されます。
"*" を受け入れます。 このポリシーは、すべてのログソースに対してtrueに評価されます。
説明グローバルマッチを使用する場合は、指定した文字を二重引用符 ("") で囲む必要があります。
グローバルマッチは、詳細編集モードでのみ使用できます。
キャラクターエスケープ
ログ収集ポリシーにアスタリスク (*) やバックスラッシュ (\) などの特殊文字が含まれている場合は、その特殊文字をエスケープする必要があります。 例: kee p instance.name == "abc\*" このポリシーは、名前がabc * のインスタンスに対してtrueに評価されます。
一般的なシナリオ
特定のリージョンに存在するインスタンスのログを収集する
この例では、中国本土内のリージョンに存在するインスタンスのログのみが、設定された収集ポリシーに基づいて収集されます。
# only scan cn region keep region == "cn-*" # accept by default accept "*"
タグを指定したインスタンスのログを収集する
この例では、typeタグの値が本番のインスタンスのログのみが、設定された収集ポリシーに基づいて収集されます。 バリュー生産は大文字と小文字を区別しません。
# only scan "production" instances keep tag.type ~= "(?i)^production$" # accept by default accept "*"
複雑なシナリオ
ログ収集ポリシーでlevel: highタグが使用されている場合、ApsaraDB RDS for MySQLインスタンス、ApsaraDB RDS for SQL Serverインスタンス、およびApsaraDB RDS for PostgreSQLインスタンスのログが収集されます。 level: highタグを使用しない場合、ApsaraDB RDS for MySQLインスタンスのログのみが収集されます。 次のコードは、関連するログ収集ポリシーを示しています。
# accept all high level instances accept tag.level == "high" # only scan mysql keep instance.db_type == "mysql" # accept by default accept "*"