tencent cloud

Cloud Log Service

Python SDKでログをアップロードする

ダウンロード
フォーカスモード
フォントサイズ
最終更新日: 2026-10-12 15:13:59
AI翻訳
本文では、CLSのPython SDKを使用してログアップロードを迅速に実行する方法を説明します。SDKの使用方法の詳細については、コードリポジトリtencentcloud-cls-sdk-pythonを参照してください。

前提条件

TencentCloud APIキー情報であるaccessKeyIdとaccessKeyを作成して取得します。キー情報の取得についてはAPIキー管理にアクセスしてください。
キーに関連付けられたアカウントに、対応するSDKログアップロード権限が付与されていることを確認してください。

開発環境の準備

Python公式サイトを参照して、Python開発環境をダウンロードしてインストールするか、condaを使用してPython仮想環境を作成してください。
CLS Python SDKは、PyPy 2、3およびPython 2.7、3.3、3.4、3.5、3.6、3.7、3.8、3.9、3.10、3.11、3.12、3.13バージョンをサポートしています。
以下のコマンドを実行して、現在のPythonのバージョン情報を確認できます。
pip -V

Python SDKのインストール

コマンドラインツールで、以下のコマンドを実行してPython SDKをインストールします。
pip install tencentcloud-cls-sdk-python

SDKインストールの確認

SDKをインストールした後、以下の手順を実行して、インストール済みのPython SDKを検証します。
pip show tencentcloud-cls-sdk-python
以下のタイプの情報が返された場合、インストールが成功したことを示します。
Name: tencentcloud-cls-sdk-python
Version: 1.0.4
Summary: TencentCloud cls log service Python client SDK
Home-page: https://github.com/TencentCloud/tencentcloud-cls-sdk-python
Author: farmerx

リクエストパラメータ

変数
タイプ
必須/任意
説明
endpoint
String
はい
ドメイン情報です。入力時は、利用可能なリージョンのAPIアップロードログタブにあるドメインをご参照ください。
accessKeyId
String
はい
TencentCloud APIキー情報です。キー情報の取得は、APIキー管理で行ってください。また、キーに関連付けられたアカウントに、対応するSDKログアップロード権限が付与されていることを確認してください。
accessKey
String
はい
TencentCloud APIキー情報です。キー情報の取得は、APIキー管理で行ってください。また、キーに関連付けられたアカウントに、対応するSDKログアップロード権限が付与されていることを確認してください。
topic_id
String
はい
日志主题的 ID 信息。

ログアップロードのサンプルコード

以下のコードはPython SDKを例に、SDKを呼び出してログアップロードを実行する方法を示しています。サンプルコードは以下の通りです。
TencentCloud APIキー情報を平文でプロジェクトコードに保存することは推奨しません。環境変数を通じてTencentCloud APIキー情報を動的に取得できます。具体的な操作については、環境変数の設定を参照してください。
# 必要なライブラリをインポートします。
import time
from tencentcloud.log.logclient import LogClient
from tencentcloud.log.logexception import LogException
from tencentcloud.log.cls_pb2 import LogGroupList
import os

def upload(topic_id, client):
LogLogGroupList = LogGroupList()
LogGroup = LogLogGroupList.logGroupList.add()
# 今回のログアップロードのファイル名ソースをカスタマイズします。これはメタデータフィールドとしてログに含まれます。
LogGroup.filename = "pyXXXX.log"
# 今回のアップロードのアドレスソースをカスタマイズします。これはメタデータフィールドとしてログに含まれます。
LogGroup.source = "192.XX.XX.XX"
# カスタムメタデータフィールド。
LogTag = LogGroup.logTags.add()
LogTag.key = "key"
LogTag.value = "value"
Log = LogGroup.logs.add()
Log.time = int(round(time.time() * 1000000)) # 現在時刻をログのタイムスタンプとして取得します。
# ログの内容を定義します。
Content = Log.contents.add()
Content.key = "Hello"
Content.value = "World"
try:
request = client.put_log_raw(topic_id, LogLogGroupList)
print("Request ID:", request.get_request_id())
except LogException as e:
print("Error uploading log:", e)
except Exception as e:
# ネットワーク接続など、その他の潜在的な問題をカバーするように例外キャッチを拡張します。
print("Unexpected Error:", e)
if __name__ == '__main__':

# ドメイン名情報を入力します。入力ガイド:https://www.tencentcloud.com/document/product/614/18940#.E5.9F.9F.E5.90.8D。リンク内のAPIログアップロードタブにあるドメイン名を参照してください。
endpoint = 'https://ap-xxxxxxxx.cls.tencentcs.com'
# TencentCloud APIキー情報を入力してください。キー情報の取得はこちらから:https://console.tencentcloud.com/cam/capi
# また、キーに関連付けられたアカウントに、対応するログアップロード権限が付与されていることを確認してください。権限設定ガイド:https://www.tencentcloud.com/document/product/614/45004#.E4.BD.BF.E7.94.A8-api-.E4.B8.8A.E4.BC.A0.E6.95.B0.E6.8D.AE
# この例では環境変数から取得します。環境変数の設定ガイド:https://www.tencentcloud.com/document/product/614/113851?from_cn_redirect=1
accessKeyId = os.environ["TENCENTCLOUD_SECRET_ID"]
accessKey = os.environ["TENCENTCLOUD_SECRET_KEY"]
if not accessKeyId or not accessKey:
raise EnvironmentError("Error: TENCENTCLOUD_SECRET_ID または TENCENTCLOUD_SECRET_KEY が設定されていません")

# ログトピックのIDを入力してください。
topic_id = '59XXXXXXXXXXXXXXXXXXXXXXXXXXXXXX'
if not endpoint.strip():
raise ValueError("endpoint は空にできません。正しいCLSドメインを入力してください")
if not topic_id.strip():
raise ValueError("topic_id は空にできません。正しいログトピックIDを入力してください")
# ログクライアントを構築します。
client = LogClient(endpoint, accessKeyId, accessKey)
# アップロード関数を呼び出します。
upload(topic_id, client)

おわりに

上記の手順により、Tencent Cloud CLSのPython SDKを使用してログアップロード操作を迅速に完了できます。問題が発生した場合は、お問い合わせください。



ヘルプとサポート

この記事はお役に立ちましたか?

フィードバック