Skip to content

非公式本サイトは非公式の日本語ドキュメントであり、Cloudflare 公式サイトではありません。最新情報はdevelopers.cloudflare.comをご確認ください。

メトリクス

最終更新 Markdown で表示Agent セットアップ

Artifacts は、アカウント全体のリポジトリアクティビティ、エラー、操作時間を調べられる分析を公開しています。

Artifacts のメトリクスは、Cloudflare の GraphQL Analytics API から利用できます。どのリポジトリが最も忙しく、どこでエラーが集中し、操作にどれくらい時間がかかるかといった問いに答えられます。

メトリクス

Artifacts は現在、artifactsEventsAdaptiveGroups GraphQL データセットをエクスポートしています。

メトリクス GraphQL フィールド 説明
操作数 count クエリフィルターに一致する Artifacts イベントの総数です。成功した操作とエラーの両方を含みます。
合計所要時間 sum.durationMs 一致する Artifacts 操作の処理にかかった合計時間(ミリ秒)です。
平均所要時間 avg.durationMs 一致する操作 1 件あたりの平均時間(ミリ秒)です。
所要時間 p25 quantiles.durationMsP25 操作所要時間の 25 パーセンタイル(ミリ秒)です。
所要時間 p50 quantiles.durationMsP50 操作所要時間の中央値(ミリ秒)です。
所要時間 p75 quantiles.durationMsP75 操作所要時間の 75 パーセンタイル(ミリ秒)です。
所要時間 p90 quantiles.durationMsP90 操作所要時間の 90 パーセンタイル(ミリ秒)です。
所要時間 p95 quantiles.durationMsP95 操作所要時間の 95 パーセンタイル(ミリ秒)です。
所要時間 p99 quantiles.durationMsP99 操作所要時間の 99 パーセンタイル(ミリ秒)です。
所要時間 p999 quantiles.durationMsP999 操作所要時間の 99.9 パーセンタイル(ミリ秒)です。

メトリクスは過去 31 日分を照会できます。クエリには、Cloudflare のアカウント ID を指定する accountTag フィルターが必要です。

ディメンション

結果のフィルターまたはグループ化には、次のディメンションを使います。

ディメンション 説明
repository namespace/name 形式の完全修飾リポジトリパスです。
repositoryNamespace リポジトリを含むネームスペースです。
repositoryName ネームスペース内のリポジトリ名です。
eventKind イベントの上位カテゴリです。成功した操作は action、失敗は error です。
eventType 具体的な操作またはエラータイプです。
errorMessage 失敗した操作のエラーメッセージです。
date イベントの暦日です。
datetime イベントの正確なタイムスタンプです。
datetimeMinute 分単位に切り捨てたイベント時刻です。
datetimeFiveMinutes 5 分ウィンドウに切り捨てたイベント時刻です。
datetimeFifteenMinutes 15 分ウィンドウに切り捨てたイベント時刻です。
datetimeHour 時間単位に切り捨てたイベント時刻です。
datetimeSixHours 6 時間ウィンドウに切り捨てたイベント時刻です。

イベントタイプ

Artifacts は現在、eventType に次の値を出力します。

イベントタイプ 種類 説明
create action リポジトリが作成されました。
fork action リポジトリがフォークされました。
push action クライアントがリポジトリにデータをプッシュしました。
pull action クライアントがリポジトリからデータを取得またはクローンしました。
delete action リポジトリが削除されました。
storageLimitReached error 操作がストレージ上限の条件に達しました。
serverError error リクエスト処理中にサービスが失敗しました。
clientError error クライアントが無効または未対応のリクエストを送りました。
rateLimited error リクエストがレート制限で拒否されました。

GraphQL クエリの例

Artifacts の分析は、GraphQL Analytics API で照会できます。このページの例は、すべて artifactsEventsAdaptiveGroups データセットを使います。

ネームスペース内のリポジトリ別操作数

このクエリは、ある期間における 1 つのネームスペース内で、最も忙しいリポジトリを調べます。平均操作時間も返すので、アクティビティとレイテンシを並べて比較できます。

query ArtifactsOperationsByRepo(
	$accountTag: String!
	$datetimeStart: Time
	$datetimeEnd: Time
	$repositoryNamespace: String!
) {
	viewer {
		accounts(filter: { accountTag: $accountTag }) {
			artifactsEventsAdaptiveGroups(
				limit: 100
				filter: {
					datetime_geq: $datetimeStart
					datetime_leq: $datetimeEnd
					repositoryNamespace: $repositoryNamespace
					eventKind: "action"
				}
				orderBy: [count_DESC]
			) {
				count
				avg {
					durationMs
				}
				dimensions {
					repositoryName
				}
			}
		}
	}
}

リポジトリ別エラー数(降順)

このクエリは、エラー件数でリポジトリを並べます。どのリポジトリが最も失敗しやすく、どのエラータイプが多いかを把握しやすくなります。

query ArtifactsErrorsByRepo(
	$accountTag: String!
	$datetimeStart: Time
	$datetimeEnd: Time
) {
	viewer {
		accounts(filter: { accountTag: $accountTag }) {
			artifactsEventsAdaptiveGroups(
				limit: 100
				filter: {
					datetime_geq: $datetimeStart
					datetime_leq: $datetimeEnd
					eventKind: "error"
				}
				orderBy: [count_DESC]
			) {
				count
				dimensions {
					repository
					eventType
				}
			}
		}
	}
}

プッシュ数が多いリポジトリ(降順)

このクエリは、ある期間に最も多くプッシュされたリポジトリを確認します。アカウント全体で書き込みが多いリポジトリを特定するのに役立ちます。

query ArtifactsPushesByRepo(
	$accountTag: String!
	$datetimeStart: Time
	$datetimeEnd: Time
) {
	viewer {
		accounts(filter: { accountTag: $accountTag }) {
			artifactsEventsAdaptiveGroups(
				limit: 100
				filter: {
					datetime_geq: $datetimeStart
					datetime_leq: $datetimeEnd
					eventKind: "action"
					eventType: "push"
				}
				orderBy: [count_DESC]
			) {
				count
				dimensions {
					repository
				}
			}
		}
	}
}

役に立ちましたか?