このトピックでは、Simple Log Serviceのパフォーマンスモニタリングデータの形式について説明します。
項目 | データ型 | 説明 | 例 |
aggTypes | String | データの集計に使用されるメソッド。 | sum |
dataType | String | データ形式。 | CallStack |
durationNs | Long | プロファイルの生成に使用される期間。 単位: ナノ秒。 | 10000000000 |
labels | JSON | タグ情報。 | {"instance" : "10.10.10.10", "region" : "cn-hangzhou"} |
言語 | String | 言語タイプ。 | OK |
name | String | 関数名に正確なスタックトップ名。 | runtime. allcom /usr/local/go/src/runtime/proc.go |
profileID | String | 現在のプロファイルのUUID。 | 517f3500-21ec-4536-9b5b-49e6b689f9ac |
スタック | String | スタックの2番目のレイヤーからスタックの一番下までの呼び出し関係。 | runtime.newm /usr/local/go/src/runtime/proc.go runtime.startm /usr/local/go/src/runtime/proc.go runtime.handoffp /usr/local/go/src/runtime/proc.go runtime.stoplockedm /usr/local/go/src/runtime/proc.go runtime.schedule /usr/local/go/src/runtime/proc.go runtime.goschedImpl /usr/local/go/src/runtime/proc.go runtime.gopreempt_m /usr/local/go/src/runtime/proc.go runtime.newstack /usr/local/go/src/runtime/stack.go runtime.mo restack /usr/local/go/src/runtime/asm_amd64.s |
stackID | String | 呼び出しスタックの一意の識別子。 IDを使用して、さまざまなスタック呼び出しメソッドの実行時間に関する統計を照会できます。 | 52431d987afe6f53 |
タイプ | String | プロファイルタイプ。 | profile_mem |
ユニット | String | 値の単位。 | バイト |
val | Double | 関数によって占有されるメモリのサイズ。 | 10000000.00 |
valueTypes | String | 値の型。 | cpu |
次の表に、プロファイルタイプ、値タイプ、および値単位の間のマッピングを示します。
プロファイルタイプ | 値のタイプ | 値の単位 | 説明 |
profile_cpu | cpu | ナノ秒 | CPU実行期間。 |
profile_cpu | 壁 | ナノ秒 | 実際の実行期間。 |
profile_cpu | itimer | ナノ秒 | CPU実行期間と同様です。 |
profile_mem | alloc_space | バイト | 割り当てられたメモリのサイズ。 |
profile_mem | alloc_objects | 集計 | メモリが割り当てられているオブジェクトの数。 |
profile_mem | inuse_space | バイト | 使用済みメモリのサイズ。 |
profile_mem | inuse_objects | 集計 | メモリを使用するオブジェクトの数。 |
profile_mem | alloc_in_new_tlab_bytes | バイト | 新しいThread Local Allocation Buffer (TLAB) 内のオブジェクトに割り当てられるメモリのサイズ。 |
profile_mem | alloc_in_new_tlab_objects | 集計 | 新しいTLAB内のオブジェクトの数。 |
profile_mem | alloc_outside_tlab_bytes | バイト | 新しいTLAB外のオブジェクトに割り当てられるメモリのサイズ。 |
profile_mem | alloc_outside_tlab_objects | 集計 | 新しいTLAB外のオブジェクトの数。 |
profile_goroutines | goroutines | 集計 | ゴルーチンの数。 |
profile_mutex | block_count | 集計 | ロックの数。 |
profile_mutex | block_duration | ナノ秒 | ロック期間。 |
CPU: コードブロックの実行に使用されるCPU時間。 関数の実行に使用されるCPU時間に基づいて、命令の実行に使用されるCPU時間を取得できます。 この時間には、CPUの待ち時間や他のプログラムの命令を処理するために使用される時間は含まれません。
ウォール: コードブロックの実行に使用される実際の時間。 関数のウォールクロック時間は、関数の開始から終了までの期間を測定するために使用されます。 ウォールクロック時間は、待ち時間、ロック時間、およびスレッド同期時間を含む。 コードブロックの実際の時間は、CPU時間よりも大きい。
itimer: itimerモードはsetitimer(ITIMER_PROF) システムに基づいて呼び出されます。 理想的なシナリオでは、プロセスがCPUタイムスロットを消費するたびにメトリックが生成されます。