CreateConfig API を呼び出して、Logtail 構成を作成します。
前提条件
Simple Log Service が有効化されていること。 詳細については、「Activate Simple Log Service」をご参照ください。
Python 用 Simple Log Service SDK が初期化されていること。 詳細については、「Python 用 Simple Log Service SDK の初期化」をご参照ください。
パラメータの説明
def create_logtail_config(self, project_name, config_detail):
リクエストパラメータ
パラメータ | タイプ | 必須 | 説明 |
project_name | String | はい | プロジェクトの名前。 Simple Log Service のプロジェクトは、異なるユーザーのリソースを分離し、特定のリソースへのアクセスを制御するために使用されます。 詳細については、「プロジェクトの管理」をご参照ください。 |
config_detail | LogtailConfig | はい | Logtail 構成に関する情報。 この例では、 |
SimpleFileConfigDetail パラメータの説明
名前 | タイプ | 必須 | 説明 |
logstoreName | String | はい | ログストアの名前。 Simple Log Service のログストアは、ログの収集、保存、およびクエリに使用されます。 詳細については、「ログストアの管理」をご参照ください。 |
configName | String | はい | Logtail 構成名はプロジェクト内で一意である必要があり、作成後は変更できません。 詳細については、「Logtail とは」をご参照ください。 名前は次の要件を満たしている必要があります。
|
logPath | String | はい | ログファイルの絶対パス。 |
filePattern | String | はい | ログファイル名。 ワイルドカード文字 |
localStorage | bool | いいえ | ローカルキャッシュを有効にするかどうかを指定します。
|
enableRawLog | bool | いいえ | 未加工ログをアップロードするかどうかを指定します。 有効な値:
|
topicFormat | String | いいえ | トピックを生成するために使用されるメソッド。 有効な値:
詳細については、「ログトピック」をご参照ください。 |
fileEncoding | String | いいえ | ログの [ファイルエンコーディング] 形式。 有効な値: |
maxDepth | int | いいえ | ログの [最大ディレクトリ監視深度] を設定します。 有効な値: 0 ~ 1000。 値 0 は、指定されたログファイルディレクトリのみが監視されることを示します。 |
preserve | bool | いいえ | タイムアウト戦略を指定します。 有効な値:
|
preserveDepth | String | いいえ | タイムアウトの最大ディレクトリ深度。 このパラメータは、preserve が False に設定されている場合に必須です。 有効な値: 1 ~ 3。 |
filterKey | List | いいえ | filterRegex で指定された正規表現と一致するフィールド値を持つログのみが収集されます。 |
filterRegex | String | いいえ | filterKey に対応する正規表現。 filterRegex と filterKey の要素数は同じである必要があります。 |
レスポンスパラメータ
レスポンスパラメータについては、「CreateConfig」をご参照ください。
サンプルコード
from aliyun.log import LogClient
from aliyun.log.logtail_config_detail import SimpleFileConfigDetail
import os
# この例では、AccessKey ID と AccessKey シークレットは環境変数から取得されます。
access_key_id = os.environ.get('ALIBABA_CLOUD_ACCESS_KEY_ID', '')
access_key_secret = os.environ.get('ALIBABA_CLOUD_ACCESS_KEY_SECRET', '')
# Simple Log Service エンドポイントを指定します。
endpoint = "ap-southeast-1.log.aliyuncs.com"
client = LogClient(endpoint, access_key_id, access_key_secret)
project = "slsproject-1"
logstore = "logstore-1"
configName = logstore + "-stt1-logtail"
logPath = "/data/logs"
filePattern = "*.log"
# 単純なテキストログ収集構成を作成します
def main():
try:
config_detail = SimpleFileConfigDetail(logstore, configName, logPath, filePattern)
res = client.create_logtail_config(project, config_detail)
res.log_print()
except Exception as error:
print(error)
if __name__ == '__main__':
main()
サンプルレスポンス
CreateLogtailConfigResponse:
headers: {'Server': 'AliyunSLS', 'Content-Length': '0', 'Connection': 'keep-alive', 'Access-Control-Allow-Origin': '*', 'Date': 'Fri, 22 Nov 2024 06:40:40 GMT', 'x-log-time': '1732257640', 'x-log-requestid': '67402768AA8C117B143D****'}
Process finished with exit code 0
関連情報
Logtail 構成を管理するために、次の API を使用できます。
サンプルコードの詳細については、GitHub の「Alibaba Cloud Simple Log Service SDK for Python」をご参照ください。