tencent cloud

Cloud Log Service

配信タスクの作成

ダウンロード
フォーカスモード
フォントサイズ
最終更新日: 2026-10-12 14:51:41
AI翻訳

操作シナリオ

ログトピックのデータをTencent Cloud CKafkaに配信し、リアルタイムストリームコンピューティングシナリオに利用できます。Tencent Cloud CKafkaインスタンスを購入していない場合は、CLSに組み込まれたKafkaプロトコルコンシューム機能の使用を検討できます。

前提条件

注意:
CKafkaでACLを有効にしている場合、CKafkaのバージョン制限に注意してください:CKafka1.Xバージョンは1.1.1以上、CKafka2.Xバージョンは2.4.2以上である必要があります。その他のバージョンでACLを有効にすると配信が失敗します。ACLを無効にすることで配信失敗の問題を解決できます。
現在はリアルタイムログ配信のみをサポートしており、履歴ログの配信はサポートしていません。
CKafka弹性Topicへの配信はサポートされていません。
CKafkaのサポートルーティングアクセス方式はPLAINTEXTに設定する必要があります。そうしないと配信に失敗します。
現在の操作アカウントにCKafkaへの配信を有効化する権限があることを確認してください。詳細はCLSアクセスポリシーテンプレートを参照してください。

操作手順

1. CKafka Topicを準備して設定します。
1.1 ログトピックと同じリージョンにCKafkaインスタンスを作成します。詳細はインスタンスの作成を参照してください。
1.2 Topicを作成します。詳細はTopicの作成を参照してください。このTopicの詳細設定に入り、以下の設定を変更します。その他のパラメータは必要に応じて設定できます。
cleanup.policy:deleteを選択してください。そうしないと配信に失敗します。
max.message.bytes:12MBに設定します。



2. CKafkaへの配信タスク管理ページに入るには、まずCLSコンソールにログインします。配信タスク管理に入る方法は2つあります:
入口1:左側のナビゲーションバーで配信消費 > CKafkaへの配信を選択し、ページ上部でリージョン、ログセット、ログトピックを順に選択します。
入口2:ログトピックリストで、CKafkaに配信する必要があるログトピックを選択して入ります。ログトピック詳細ページで、ページ左側の配信消費 > CKafkaへの配信を選択します。
3. 右側の編集をクリックし、CKafkaへの配信スイッチをオンにし、対応するCKafkaインスタンスとTopicを選択して、配信を開始します。元のコンテンツまたはJSONでログを配信することを選択できます。
元のコンテンツでCKafkaに配信します。設定項目の説明は以下の通りです:
設定項目
説明
ルール
必須/任意
対象CKafka Topicの帰属
現在のメインアカウント
その他のメインアカウント
CLSログを現在のメインアカウントのCKafka Topicに配信します。
CLSログを他のメインアカウントのCKafkaに配信する場合、例えばAアカウントがCLSでログをBアカウントのCKafka Topicに配信するには、BアカウントがCAM(アクセス管理)側でアクセスロールを設定する必要があります。設定完了後、AアカウントがロールARNと外部IDをCLSコンソールに入力することで、クロスアカウント配信が可能になります。ロールの設定手順は以下の通りです:
1. ロールを新規作成します。アカウントBでCAMロール管理ページにログインします。
1.1 アクセスポリシーを作成します。ポリシー名の例:cross_shipper。ポリシー構文は以下の通りです:
説明:
例示の認可は最小権限の原則に従い、resourceは広州地域のCKafka:ckafka-12abcde3にのみ配信できるように設定されています。実際の状況に応じて認可を行ってください。
{
"statement": [
{
"action": [
"cam:GetRole"
],
"effect": "allow",
"resource": [
"*"
]
},
{
"action": [
"ckafka:ListRoute",
"ckafka:AddRoute",
"ckafka:DescribeInstanceAttributes",
"ckafka:AuthorizeToken",
"ckafka:CreateToken",
"ckafka:DescribeTopicAttributes"
],
"effect": "allow",
"resource": [
"qcs::ckafka:ap-guangzhou:uin/100001234567:ckafkaId/ckafka-12abcde3"
]//resourceは広州地域のCKafka:ckafka-12abcde3にのみ配信できるように設定されています。実際の状況に応じて認可を行ってください。
}
],
"version": "2.0"
}
1.2 ロールを新規作成し、Tencent Cloudアカウントロールキャリアを選択します。クラウドアカウントタイプで他のメインアカウントを選択し、AアカウントのIDを入力します。例えば100012345678です。検証を有効にするにチェックを入れ、外部IDを設定します。例えばHello123です。
1.3 ロールポリシーを設定し、ロールのアクセスポリシーを設定し、最初の手順で設定したアクセスポリシーcross_shipper(例)を選択します。
1.4 このロールを保存します。例:uinA_writeCLS_to_CKafka。
2. ロールにキャリアを設定します。CAMロールリストでuinA_writeCLS_to_CKafka(例)を見つけ、そのロールをクリックし、下にあるロールキャリア > キャリア管理 > プロダクトサービスの追加 > CLSを選択を選択してから、更新をクリックします。
現在のロールのキャリアは2つあることが確認できます。1つはAアカウントで、もう1つはcls.cloud.tencent.com(CLS)です。
3. AアカウントでCLSにログインし、ロールARNと外部IDを入力します。
この2つの情報はBアカウントが提供します:
BアカウントでCAMロールリストからロールuinA_writeCLS_to_CKafka(例)を見つけ、クリックするとそのロールのRoleArnを確認できます。例:qcs::cam::uin/100001112345:roleName/uinA_writeCLS_to_CKafka。
ロールキャリアで外部IDを確認できます。例:Hello123。
注意:
ロールARN、外部IDを入力する際、余分なスペースを入力しないように注意してください。権限検証が失敗する原因となります。
クロスアカウント配信では、Aアカウントにログトピックの読み取りトラフィック料金が発生します。
現在のメインアカウント/その他のメインアカウント
いいえ
CKafka インスタンス
現在のログトピックと同じリージョンにあるCKafka Topicを配信先とします。
クロスアカウント配信のシナリオでは、ユーザーがCKafkaインスタンスIDとTopic名を手動で入力する必要があります。
リストから選択
必須
配信データ形式
原始内容を選択し、ユーザーの元のログを配信します。
リストから選択
必須
データ圧縮形式
非圧縮\\SNAPPY\\LZ4。
リストから選択
必須
配信ログプレビュー
配信するログデータをプレビューします。
-
-
JSON形式でCKafkaに配信します。設定項目の説明は以下の通りです:
設定項目
説明
ルール
必須/任意
対象CKafka Topicの帰属
現在のメインアカウント
その他のメインアカウント
CLSログを現在のメインアカウントのCKafka Topicに配信します。
CLSログを他のメインアカウントのCKafkaに配信する場合、例えばAアカウントがCLSでログをBアカウントのCKafka Topicに配信するには、BアカウントがCAM(アクセス管理)側でアクセスロールを設定する必要があります。設定完了後、AアカウントがロールARNと外部IDをCLSコンソールに入力することで、クロスアカウント配信が可能になります。ロールの設定手順は以下の通りです:
1. ロールを新規作成します。アカウントBでCAMロール管理ページにログインします。
1.1 アクセスポリシーを作成します。ポリシー名の例:cross_shipper。ポリシー構文は以下の通りです:
説明:
例示の認可は最小権限の原則に従い、resourceは広州地域のCKafka:ckafka-12abcde3にのみ配信できるように設定されています。実際の状況に応じて認可を行ってください。
{
"statement": [
{
"action": [
"cam:GetRole"
],
"effect": "allow",
"resource": [
"*"
]
},
{
"action": [
"ckafka:ListRoute",
"ckafka:AddRoute",
"ckafka:DescribeInstanceAttributes",
"ckafka:AuthorizeToken",
"ckafka:CreateToken",
"ckafka:DescribeTopicAttributes"
],
"effect": "allow",
"resource": [
"qcs::ckafka:ap-guangzhou:uin/100001234567:ckafkaId/ckafka-12abcde3"
]//resourceは広州地域のCKafka:ckafka-12abcde3にのみ配信できるように設定されています。実際の状況に応じて認可を行ってください。
}
],
"version": "2.0"
}
1.2 ロールを新規作成し、Tencent Cloudアカウントロールキャリアを選択します。クラウドアカウントタイプで他のメインアカウントを選択し、AアカウントのIDを入力します。例えば100012345678です。検証を有効にするにチェックを入れ、外部IDを設定します。例えばHello123です。
1.3 ロールポリシーを設定し、ロールのアクセスポリシーを設定し、最初の手順で設定したアクセスポリシーcross_shipper(例)を選択します。
1.4 このロールを保存します。例:uinA_writeCLS_to_CKafka。
2. ロールにキャリアを設定します。CAMロールリストでuinA_writeCLS_to_CKafka(例)を見つけ、そのロールをクリックし、下にあるロールキャリア > キャリア管理 > プロダクトサービスの追加 > CLSを選択を選択してから、更新をクリックします。
現在のロールのキャリアは2つあることが確認できます。1つはAアカウントで、もう1つはcls.cloud.tencent.com(CLS)です。
3. AアカウントでCLSにログインし、ロールARNと外部IDを入力します。
この2つの情報はBアカウントが提供します:
BアカウントでCAMロールリストからロールuinA_writeCLS_to_CKafka(例)を見つけ、クリックするとそのロールのRoleArnを確認できます。例:qcs::cam::uin/100001112345:roleName/uinA_writeCLS_to_CKafka。
ロールキャリアで外部IDを確認できます。例:Hello123。
注意:
ロールARN、外部IDを入力する際、余分なスペースを入力しないように注意してください。権限検証が失敗する原因となります。
クロスアカウント配信では、Aアカウントにログトピックの読み取りトラフィック料金が発生します。
現在のメインアカウント/その他のメインアカウント
いいえ
CKafka インスタンス
現在のログトピックと同じリージョンにあるCKafka Topicを配信先とします。
リストから選択
必須
配信データ形式
JSONを選択し、JSONデータ形式でログを配信します。
リストから選択
必須
配信ログフィールド
配信するログフィールドを選択してください。
JSON形式のエスケープ/非エスケープの説明は以下の通りです:
エスケープは、JSONの第1階層ノードの値をStringに変換します。第1階層ノードの値がStructの場合、下流でのデータ格納や計算時に、事前にそのStructをStringに変換する必要がある場合は、このオプションを選択できます。
エスケープせず、JSON構造と階層を変更しません。ログ形式は収集側と一致します。
注意:
JSONの第1階層ノードに数値が含まれている場合、消費後に自動的にint、floatへ変換されます。
ログ:{"a":123, "b":"123", "c":"-123", "d":"123.45", "e":{"e1":123,"f1":"123"}}
消費:{"a":123,"b":123,"c":-123,"d":123.45,"e":{"e1":123,"f1":"123"}}
__TAG__メタ情報をフラット化するかしないかの説明は以下の通りです:
例:__TAG__メタ情報:{"__TAG__":{"fieldA":200, "fieldB":"text"}}
フラット化:{"__TAG__.fieldA":200,"__TAG__.fieldB":"text"}
フラット化しない:{"__TAG__":{"fieldA":200, "fieldB":"text"}}
選択
必須
データ圧縮形式
非圧縮\\SNAPPY\\LZ4。
選択
必須
配信ログプレビュー
配信するログデータをプレビューします。
-
-
詳細オプション
CKafkaパーティション生成ルール:スイッチをオンにすると、設定したフィールド値に基づいてHash値が計算され、同じ結果のものはCKafkaの同じパーティションに書き込まれます。
注意:
最大5つのフィールドの値を連結できます。複数のフィールド値の文字の合計長は4096を超えてはならず、超えた場合は切り捨てられます。
フィールド値が文字列または数値のものを選んでHashするようにしてください。フィールド値が複合型(JSONなど)の場合、Hash結果に基づくパーティション配信の正確性は保証されません。
選択
必須
4. 確定をクリックして、CKafkaへの配信を開始します。
注意:
CKafkaへ配信する前にログのクリーニング、加工、フィルタリングを行う必要がある場合は、データ加工操作の使用をご参照ください。

よくあるご質問

CKafka Topicの読み書き権限がないと表示された場合の対処方法は?

APIインターフェースを使用して直接CKafkaにデータを配信する場合、CKafka Topicの読み書き権限の問題が発生する可能性があります。コンソールでこの機能を使用する場合、システムが関連する認可を案内しますが、APIを直接呼び出して配信する場合は、手動で認可する必要があります。具体的な調査と解決策については、配信タスクロールの認可をご参照ください。

ヘルプとサポート

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

フィードバック