# 統計 API

## 統計項目一覧

**説明が書いていないものは項目名そのままの内容になります**

- timestamp- API を取得した時点の UTC 時間 RFC3339 形式 (マイクロ秒)
- channel_id
- group_id
- session_id
- client_id
- bundle_id
- connection_id
- simulcast- r0- rtp- total_decrypt_skipped_srtp
      - total_received_rtp
      - total_received_rtp_byte_size
      - total_received_rtp_padding
      - total_received_rtp_padding_size
      - total_received_rtp_red
      - total_received_rtp_red_rtx
      - total_received_rtp_red_ulpfec
      - total_received_rtp_rtx
    - rtp_hdrext- total_received_rtp_hdrext_abs_send_time
      - total_received_rtp_hdrext_audio_level
      - total_received_rtp_hdrext_av1_rtp_sepc
      - total_received_rtp_hdrext_color_space
      - total_received_rtp_hdrext_inband_cn
      - total_received_rtp_hdrext_playout_delay
      - total_received_rtp_hdrext_sdes_mid
      - total_received_rtp_hdrext_sdes_repaired_rtp_stream_id
      - total_received_rtp_hdrext_sdes_rtp_stream_id
      - total_received_rtp_hdrext_toffset
      - total_received_rtp_hdrext_transport_wide_cc
      - total_received_rtp_hdrext_unknown
      - total_received_rtp_hdrext_video_content_type
      - total_received_rtp_hdrext_video_orientation
      - total_received_rtp_hdrext_video_timing
      - total_received_rtp_hdrext_video_composition_time
  - r1- r0 と同様
  - r2- r0 と同様
- simulcast_auto- target_sender_count
  - total_switched
  - total_up_trend
  - total_history_not_ready
- spotlight- total_spotlight_audible_to_focus_delay_us- 発話開始からフォーカス取得までの累積遅延 (マイクロ秒単位)
  - total_spotlight_focus_failed
  - total_spotlight_focus_succeeded
  - total_spotlight_unfocus_audio_no_room
  - total_spotlight_unfocus_audio_out_packet
  - total_spotlight_unfocus_audio_publish
- dtls- total_received_dtls- 受信した DTLS パケットの総数
  - total_sent_dtls- 送信した DTLS パケットの総数
- ice_connection_state- total_connected_req- `connected` 状態での疎通確認用のリクエスト送信回数
  - total_connected_ack- `connected` 状態での疎通確認用の応答受信回数
  - total_checking_req- `checking` 状態での疎通確認用のリクエスト送信回数
  - total_checking_ack- `checking` 状態での疎通確認用の応答受信回数
  - total_disconnected_req- `disconnected` 状態での疎通確認用のリクエスト送信回数
  - total_disconnected_ack- `disconnected` 状態での疎通確認用の応答受信回数
  - total_connected_to_checking- `connected` 状態から `checking` 状態へ遷移した回数
  - total_checking_to_disconnected- `checking` 状態から `disconnected` 状態へ遷移した回数
  - total_disconnected_to_failed- `disconnected` 状態から `failed` 状態へ遷移した回数
  - total_checking_to_connected- `checking` 状態から `connected` 状態へ遷移した回数
  - total_disconnected_to_checking- `disconnected` 状態から `checking` 状態へ遷移した回数
  - total_checking_duration_ms- `checking` 状態であった時間の合計
  - total_disconnected_duration_ms- `disconnected` 状態であった時間の合計
- signaling- total_received_signaling_pong
  - total_sent_signaling_ping
- media_publish_worker- peak_count- その接続でこれまでに同時に起動した配信ワーカー数の最大値
  - total_started- その接続でこれまでに起動した配信ワーカーの総数
  - total_stopped- その接続でこれまでに停止した配信ワーカーの総数
  - total_unknown_subscriber- 配信ワーカーとの対応が存在しないサブスクライバー (受信側接続) の数
- packet_loss_simulator- total_dropped_received_rtp- 受信したがパケロスシミュレータが落とした RTP パケットの総数
  - total_dropped_sent_rtp- 送信したがパケロスシミュレータが落とした RTP パケットの総数
  - total_dropped_received_data_channel- 受信したがパケロスシミュレータが落とした DataChannel パケットの総数
  - total_dropped_sent_data_channel- 送信したがパケロスシミュレータが落とした DataChannel パケットの総数
- rtp- total_received
  - total_received_byte_size
  - total_received_rtp
  - total_received_rtp_byte_size
  - total_received_rtp_red
  - total_received_rtp_red_rtx
  - total_received_rtp_red_ulpfec
  - total_received_rtp_rtx
  - total_received_sounding_rtp
  - total_sent
  - total_sent_byte_size
  - total_sent_rtp
  - total_sent_rtp_byte_size- SFU 遅延を含む RTP パケットの総数
  - total_sent_rtp_sfu_delay_us- Sora 内部で発生した遅延の累積値 (マイクロ秒単位)
  - total_decrypt_skipped_srtp- 復号をスキップした SRTP 総数
  - total_decrypt_skipped_video_srtp- 復号をスキップした映像 SRTP 総数
  - total_decrypt_skipped_audio_srtp- 復号をスキップした音声 SRTP 総数
  - total_received_srtp_invalid
  - total_received_rtp_padding
  - total_received_rtp_padding_size
  - total_received_rtp_payload_invalid
  - total_received_key_frame- キーフレームを受信した総数
  - total_ulpfec_recovered- ULPFEC を利用して損失パケットを回復した総数
- rtp_hdrext- total_received_rtp_hdrext_abs_capture_time
  - total_received_rtp_hdrext_abs_send_time
  - total_received_rtp_hdrext_audio_level
  - total_received_rtp_hdrext_av1_rtp_sepc
  - total_received_rtp_hdrext_color_space
  - total_received_rtp_hdrext_inband_cn
  - total_received_rtp_hdrext_playout_delay
  - total_received_rtp_hdrext_sdes_mid
  - total_received_rtp_hdrext_sdes_repaired_rtp_stream_id
  - total_received_rtp_hdrext_sdes_rtp_stream_id
  - total_received_rtp_hdrext_toffset
  - total_received_rtp_hdrext_transport_wide_cc
  - total_received_rtp_hdrext_unknown
  - total_received_rtp_hdrext_video_content_type
  - total_received_rtp_hdrext_video_orientation
  - total_received_rtp_hdrext_video_timing
  - total_received_rtp_hdrext_abs_capture_time
  - total_received_rtp_hdrext_video_composition_time
  - total_sent_rtp_hdrext_abs_capture_time
  - total_sent_rtp_hdrext_abs_send_time
  - total_sent_rtp_hdrext_audio_level
  - total_sent_rtp_hdrext_av1_rtp_sepc
  - total_sent_rtp_hdrext_color_space
  - total_sent_rtp_hdrext_inband_cn
  - total_sent_rtp_hdrext_playout_delay
  - total_sent_rtp_hdrext_sdes_mid
  - total_sent_rtp_hdrext_sdes_repaired_rtp_stream_id
  - total_sent_rtp_hdrext_sdes_rtp_stream_id
  - total_sent_rtp_hdrext_toffset
  - total_sent_rtp_hdrext_transport_wide_cc
  - total_sent_rtp_hdrext_unknown
  - total_sent_rtp_hdrext_video_content_type
  - total_sent_rtp_hdrext_video_orientation
  - total_sent_rtp_hdrext_video_timing
  - total_sent_rtp_hdrext_abs_capture_time
  - total_sent_rtp_hdrext_video_composition_time
- rtcp- total_generic_nack_cache_hit- 再送要求に答えた総数
  - total_generic_nack_cache_miss- 再送要求に答えられなかった総数
  - total_pli_trigger- 再送要求が限界に来たため全画面要求(PLI) を送信した総数
  - total_received_rtcp
  - total_received_rtcp_bye
  - total_received_rtcp_byte_size
  - total_received_rtcp_psfb_afb
  - total_received_rtcp_psfb_fir
  - total_received_rtcp_psfb_pli
  - total_received_rtcp_rr
  - total_received_rtcp_rtpfb_generic_nack
  - total_received_rtcp_rtpfb_tmmbn
  - total_received_rtcp_rtpfb_tmmbr
  - total_received_rtcp_rtpfb_transport_wide
  - total_received_rtcp_sdes
  - total_received_rtcp_sr
  - total_received_rtcp_unknown
  - total_received_rtcp_xr
  - total_sent_rtcp
  - total_sent_rtcp_bye
  - total_sent_rtcp_byte_size
  - total_sent_rtcp_psfb_afb
  - total_sent_rtcp_psfb_fir
  - total_sent_rtcp_psfb_pli
  - total_sent_rtcp_rr
  - total_sent_rtcp_rtpfb_generic_nack
  - total_sent_rtcp_rtpfb_tmmbn
  - total_sent_rtcp_rtpfb_tmmbr
  - total_sent_rtcp_rtpfb_transport_wide
  - total_sent_rtcp_sdes
  - total_sent_rtcp_sr
  - total_sent_rtcp_unknown
  - total_sent_rtcp_xr
- turn- total_received_allocate_request
  - total_received_binding_request
  - total_received_channel_bind_request
  - total_received_channel_data
  - total_received_create_permission_request
  - total_received_expired_channel_number
  - total_received_invalid_channel_data
  - total_received_refresh_request
  - total_received_send_indication
  - total_received_stun_invalid
  - total_received_stun_unknown
  - total_received_turn_binding_error
  - total_received_turn_binding_request
  - total_received_turn_binding_success
  - total_received_turn_invalid_stun
  - total_received_turn_unknown
  - total_received_turn_unknown_stun
  - total_received_unknown_channel_number
  - total_received_unknown_packet
  - total_sent_allocate_error
  - total_sent_allocate_success
  - total_sent_binding_error
  - total_sent_binding_success
  - total_sent_channel_bind_error
  - total_sent_channel_bind_success
  - total_sent_channel_data
  - total_sent_create_permission_error
  - total_sent_create_permission_success
  - total_sent_data_indication
  - total_sent_refresh_error
  - total_sent_refresh_success
  - total_sent_turn_binding_error
  - total_sent_turn_binding_request
  - total_sent_turn_binding_success
  - total_sent_turn_unknown
- data_channel- signaling- ordered
    - max_packet_life_time
    - max_retransmits
    - protocol
    - direction
    - compress
    - total_data_channel_abandon_message
    - total_data_channel_retransmit_message
    - total_data_channel_open_message
    - total_data_channel_ack_message
    - total_received_data_channel_message
    - total_received_data_channel_message_byte_size
    - total_sent_data_channel_message
    - total_sent_data_channel_message_byte_size
  - notify- signaling と同様
  - push- signaling と同様
  - stats- signaling と同様
  - # から始まるメッセージング用ラベル- signaling と同様
- sctp- total_received_sctp_zero_checksum- SCTP チェックサムを 0 で受信した総数
  - total_sent_sctp_zero_checksum- SCTP チェックサムを 0 で送信した総数
  - total_received_invalid_sctp
  - total_received_sctp
  - total_received_sctp_byte_size
  - total_received_sctp_chunk_abort
  - total_received_sctp_chunk_asconf
  - total_received_sctp_chunk_asconf_ack
  - total_received_sctp_chunk_auth
  - total_received_sctp_chunk_cookie_ack
  - total_received_sctp_chunk_cookie_echo
  - total_received_sctp_chunk_cwr
  - total_received_sctp_chunk_data
  - total_received_sctp_chunk_ecne
  - total_received_sctp_chunk_error
  - total_received_sctp_chunk_forward_tsn
  - total_received_sctp_chunk_heartbeat
  - total_received_sctp_chunk_heartbeat_ack
  - total_received_sctp_chunk_i_data
  - total_received_sctp_chunk_i_forward_tsn
  - total_received_sctp_chunk_init
  - total_received_sctp_chunk_init_ack
  - total_received_sctp_chunk_pad
  - total_received_sctp_chunk_reconfig
  - total_received_sctp_chunk_sack
  - total_received_sctp_chunk_shutdown
  - total_received_sctp_chunk_shutdown_ack
  - total_received_sctp_chunk_shutdown_complete
  - total_received_sctp_chunk_unknown
  - total_received_unknown_sctp
  - total_sent_sctp
  - total_sent_sctp_byte_size
  - total_sent_sctp_chunk_abort
  - total_sent_sctp_chunk_asconf
  - total_sent_sctp_chunk_asconf_ack
  - total_sent_sctp_chunk_auth
  - total_sent_sctp_chunk_cookie_ack
  - total_sent_sctp_chunk_cookie_echo
  - total_sent_sctp_chunk_cwr
  - total_sent_sctp_chunk_data
  - total_sent_sctp_chunk_ecne
  - total_sent_sctp_chunk_error
  - total_sent_sctp_chunk_forward_tsn
  - total_sent_sctp_chunk_heartbeat
  - total_sent_sctp_chunk_heartbeat_ack
  - total_sent_sctp_chunk_i_data
  - total_sent_sctp_chunk_i_forward_tsn
  - total_sent_sctp_chunk_init
  - total_sent_sctp_chunk_init_ack
  - total_sent_sctp_chunk_pad
  - total_sent_sctp_chunk_reconfig
  - total_sent_sctp_chunk_sack
  - total_sent_sctp_chunk_shutdown
  - total_sent_sctp_chunk_shutdown_ack
  - total_sent_sctp_chunk_shutdown_complete
  - total_sent_sctp_chunk_unknown
  - total_enqueued_sent_chunk- SCTP 送信用キュー (sent_queue) に追加されたチャンク数
  - total_dequeued_sent_chunk- SCTP 送信用キュー (sent_queue) から取り出されたチャンク数
  - total_enqueued_outbound_chunk- SCTP 送信待ちキュー (outbound_queue) に追加されたチャンク数
  - total_dequeued_outbound_chunk- SCTP 送信待ちキュー (outbound_queue) から取り出されたチャンク数
  - total_increased_flight_size- SCTP フライトサイズの増加量の合計値 (バイト単位)
  - total_decreased_flight_size- SCTP フライトサイズの減少量の合計値 (バイト単位)
  - total_expired_t3_timer- SCTP T3 タイマーの満了回数
- cc- bwe_period
  - congestion_window
  - delay_based_estimated_bitrate
  - pacer_data_window
  - pacer_padding_window
  - round_trip_time
  - stable_target_bitrate
  - target_bitrate


## GetStatsConnection

**x-sora-target**: Sora_20170529.GetStatsConnection

指定した接続の統計情報を取得します。

* - キー
  - 型
* - channel_id
  - string
* - connection_id
  - string

```console
$ curl -sS \
    -X POST \
    http://127.0.0.1:3000/ \
    -H "x-sora-target: Sora_20170529.GetStatsConnection" \
    --json '{"channel_id":"sora","connection_id":"KDBN2YD1A919V5BA2JX6TG2RP8"}' \
    | jq .
{
    "channel_id": "sora",
    "group_id": "FDYSGDVQ592CK5D4ZMC0W4XXDM",
    "session_id": "FDYSGDVQ592CK5D4ZMC0W4XXDM",
    "client_id": "KP8VZZ321D0A90RSVJC4RMGJ08",
    "bundle_id": "KP8VZZ321D0A90RSVJC4RMGJ08",
    "connection_id": "KP8VZZ321D0A90RSVJC4RMGJ08",
    "cc": {
        "bwe_period": 0,
        "congestion_window": 0,
        "delay_based_estimated_bitrate": 0,
        "pacer_data_window": 0,
        "pacer_padding_window": 0,
        "round_trip_time": 0,
        "stable_target_bitrate": 0,
        "target_bitrate": 0
    },
    "data_channel": {
        "#test": {
            "compress": false,
            "direction": "sendrecv",
            "ordered": true,
            "protocol": "",
            "total_data_channel_abandon_message": 0,
            "total_data_channel_ack_message": 0,
            "total_data_channel_open_message": 0,
            "total_data_channel_retransmit_message": 0,
            "total_received_data_channel_message": 1,
            "total_received_data_channel_message_byte_size": 1,
            "total_sent_data_channel_message": 1,
            "total_sent_data_channel_message_byte_size": 17
        },
        "notify": {
            "compress": true,
            "direction": "recvonly",
            "ordered": true,
            "protocol": "",
            "total_data_channel_abandon_message": 0,
            "total_data_channel_ack_message": 0,
            "total_data_channel_open_message": 0,
            "total_data_channel_retransmit_message": 0,
            "total_received_data_channel_message": 1,
            "total_received_data_channel_message_byte_size": 1,
            "total_sent_data_channel_message": 8,
            "total_sent_data_channel_message_byte_size": 627
        },
        "push": {
            "compress": true,
            "direction": "recvonly",
            "ordered": true,
            "protocol": "",
            "total_data_channel_abandon_message": 0,
            "total_data_channel_ack_message": 0,
            "total_data_channel_open_message": 0,
            "total_data_channel_retransmit_message": 0,
            "total_received_data_channel_message": 1,
            "total_received_data_channel_message_byte_size": 1,
            "total_sent_data_channel_message": 1,
            "total_sent_data_channel_message_byte_size": 16
        },
        "signaling": {
            "compress": true,
            "direction": "sendrecv",
            "ordered": true,
            "protocol": "",
            "total_data_channel_abandon_message": 0,
            "total_data_channel_ack_message": 0,
            "total_data_channel_open_message": 0,
            "total_data_channel_retransmit_message": 0,
            "total_received_data_channel_message": 1,
            "total_received_data_channel_message_byte_size": 1,
            "total_sent_data_channel_message": 1,
            "total_sent_data_channel_message_byte_size": 21
        },
        "stats": {
            "compress": true,
            "direction": "sendrecv",
            "ordered": true,
            "protocol": "",
            "total_data_channel_abandon_message": 0,
            "total_data_channel_ack_message": 0,
            "total_data_channel_open_message": 0,
            "total_data_channel_retransmit_message": 0,
            "total_received_data_channel_message": 3,
            "total_received_data_channel_message_byte_size": 30078,
            "total_sent_data_channel_message": 3,
            "total_sent_data_channel_message_byte_size": 73
        }
    },
    "dtls": {
        "total_received_dtls": 36,
        "total_sent_dtls": 37
    },
    "media_publish_worker": {
        "peak_count": 0,
        "total_started": 0,
        "total_stopped": 0,
        "total_unknown_subscriber": 0
    },
    "packet_loss_simulator": {
        "total_dropped_received_data_channel": 2,
        "total_dropped_received_rtp": 0,
        "total_dropped_sent_data_channel": 2,
        "total_dropped_sent_rtp": 0
    },
    "rtcp": {
        "total_generic_nack_cache_hit": 4,
        "total_generic_nack_cache_miss": 0,
        "total_pli_trigger": 0,
        "total_received_rtcp": 375,
        "total_received_rtcp_bye": 0,
        "total_received_rtcp_byte_size": 33260,
        "total_received_rtcp_psfb_afb": 278,
        "total_received_rtcp_psfb_fir": 0,
        "total_received_rtcp_psfb_pli": 0,
        "total_received_rtcp_rr": 73,
        "total_received_rtcp_rtpfb_generic_nack": 4,
        "total_received_rtcp_rtpfb_tmmbn": 0,
        "total_received_rtcp_rtpfb_tmmbr": 0,
        "total_received_rtcp_rtpfb_transport_wide": 0,
        "total_received_rtcp_sdes": 298,
        "total_received_rtcp_sr": 298,
        "total_received_rtcp_unknown": 0,
        "total_received_rtcp_xr": 0,
        "total_sent_rtcp": 184,
        "total_sent_rtcp_bye": 0,
        "total_sent_rtcp_byte_size": 14812,
        "total_sent_rtcp_psfb_afb": 79,
        "total_sent_rtcp_psfb_fir": 0,
        "total_sent_rtcp_psfb_pli": 0,
        "total_sent_rtcp_rr": 91,
        "total_sent_rtcp_rtpfb_generic_nack": 0,
        "total_sent_rtcp_rtpfb_tmmbn": 0,
        "total_sent_rtcp_rtpfb_tmmbr": 0,
        "total_sent_rtcp_rtpfb_transport_wide": 0,
        "total_sent_rtcp_sdes": 93,
        "total_sent_rtcp_sr": 93,
        "total_sent_rtcp_unknown": 0,
        "total_sent_rtcp_xr": 0
    },
    "rtp": {
        "total_decrypt_skipped_audio_srtp": 717,
        "total_decrypt_skipped_srtp": 1599,
        "total_decrypt_skipped_video_srtp": 882,
        "total_received": 5706,
        "total_received_byte_size": 1879672,
        "total_received_rtp": 5331,
        "total_received_rtp_byte_size": 1846412,
        "total_received_key_frame": 0,
        "total_received_rtp_padding": 0,
        "total_received_rtp_padding_size": 0,
        "total_received_rtp_payload_invalid": 0,
        "total_received_rtp_red": 0,
        "total_received_rtp_red_rtx": 0,
        "total_received_rtp_red_ulpfec": 0,
        "total_received_rtp_rtx": 79,
        "total_received_sounding_rtp": 0,
        "total_received_srtp_invalid": 0,
        "total_sent": 5548,
        "total_sent_byte_size": 2015913,
        "total_sent_rtp": 5364,
        "total_sent_rtp_byte_size": 2001101,
        "total_sent_rtp_sfu_delay_us": 0,
        "total_ulpfec_recovered": 0
    },
    "rtp_hdrext": {
        "total_received_rtp_hdrext_abs_capture_time": 0,
        "total_received_rtp_hdrext_abs_send_time": 5331,
        "total_received_rtp_hdrext_audio_level": 3187,
        "total_received_rtp_hdrext_av1_rtp_sepc": 2144,
        "total_received_rtp_hdrext_color_space": 0,
        "total_received_rtp_hdrext_inband_cn": 0,
        "total_received_rtp_hdrext_playout_delay": 0,
        "total_received_rtp_hdrext_sdes_mid": 0,
        "total_received_rtp_hdrext_sdes_repaired_rtp_stream_id": 0,
        "total_received_rtp_hdrext_sdes_rtp_stream_id": 0,
        "total_received_rtp_hdrext_toffset": 0,
        "total_received_rtp_hdrext_transport_wide_cc": 0,
        "total_received_rtp_hdrext_unknown": 0,
        "total_received_rtp_hdrext_video_content_type": 0,
        "total_received_rtp_hdrext_video_orientation": 0,
        "total_received_rtp_hdrext_video_timing": 0,
        "total_sent_rtp_hdrext_abs_capture_time": 0,
        "total_sent_rtp_hdrext_abs_send_time": 0,
        "total_sent_rtp_hdrext_audio_level": 3188,
        "total_sent_rtp_hdrext_av1_rtp_sepc": 2176,
        "total_sent_rtp_hdrext_color_space": 0,
        "total_sent_rtp_hdrext_inband_cn": 0,
        "total_sent_rtp_hdrext_playout_delay": 0,
        "total_sent_rtp_hdrext_sdes_mid": 0,
        "total_sent_rtp_hdrext_sdes_repaired_rtp_stream_id": 0,
        "total_sent_rtp_hdrext_sdes_rtp_stream_id": 0,
        "total_sent_rtp_hdrext_toffset": 0,
        "total_sent_rtp_hdrext_transport_wide_cc": 0,
        "total_sent_rtp_hdrext_unknown": 0,
        "total_sent_rtp_hdrext_video_content_type": 0,
        "total_sent_rtp_hdrext_video_orientation": 0,
        "total_sent_rtp_hdrext_video_timing": 0
    },
    "sctp": {
        "total_decreased_flight_size": 0,
        "total_dequeued_outbound_chunk": 0,
        "total_dequeued_sent_chunk": 0,
        "total_enqueued_outbound_chunk": 0,
        "total_enqueued_sent_chunk": 0,
        "total_expired_t3_timer": 0,
        "total_increased_flight_size": 0,
        "total_pruned_sctp_data_chunk": 0,
        "total_received_invalid_sctp": 0,
        "total_received_sctp": 32,
        "total_received_sctp_byte_size": 8244,
        "total_received_sctp_chunk_abort": 0,
        "total_received_sctp_chunk_asconf": 0,
        "total_received_sctp_chunk_asconf_ack": 0,
        "total_received_sctp_chunk_auth": 0,
        "total_received_sctp_chunk_cookie_ack": 0,
        "total_received_sctp_chunk_cookie_echo": 1,
        "total_received_sctp_chunk_cwr": 0,
        "total_received_sctp_chunk_data": 14,
        "total_received_sctp_chunk_ecne": 0,
        "total_received_sctp_chunk_error": 0,
        "total_received_sctp_chunk_forward_tsn": 0,
        "total_received_sctp_chunk_heartbeat": 0,
        "total_received_sctp_chunk_heartbeat_ack": 2,
        "total_received_sctp_chunk_i_data": 0,
        "total_received_sctp_chunk_i_forward_tsn": 0,
        "total_received_sctp_chunk_init": 1,
        "total_received_sctp_chunk_init_ack": 0,
        "total_received_sctp_chunk_pad": 19,
        "total_received_sctp_chunk_reconfig": 0,
        "total_received_sctp_chunk_sack": 15,
        "total_received_sctp_chunk_shutdown": 0,
        "total_received_sctp_chunk_shutdown_ack": 0,
        "total_received_sctp_chunk_shutdown_complete": 0,
        "total_received_sctp_chunk_unknown": 0,
        "total_received_sctp_zero_checksum": 0,
        "total_received_unknown_sctp": 0,
        "total_sent_sctp": 37,
        "total_sent_sctp_byte_size": 2060,
        "total_sent_sctp_chunk_abort": 0,
        "total_sent_sctp_chunk_asconf": 0,
        "total_sent_sctp_chunk_asconf_ack": 0,
        "total_sent_sctp_chunk_auth": 0,
        "total_sent_sctp_chunk_cookie_ack": 1,
        "total_sent_sctp_chunk_cookie_echo": 0,
        "total_sent_sctp_chunk_cwr": 0,
        "total_sent_sctp_chunk_data": 19,
        "total_sent_sctp_chunk_ecne": 0,
        "total_sent_sctp_chunk_error": 0,
        "total_sent_sctp_chunk_forward_tsn": 0,
        "total_sent_sctp_chunk_heartbeat": 2,
        "total_sent_sctp_chunk_heartbeat_ack": 0,
        "total_sent_sctp_chunk_i_data": 0,
        "total_sent_sctp_chunk_i_forward_tsn": 0,
        "total_sent_sctp_chunk_init": 0,
        "total_sent_sctp_chunk_init_ack": 1,
        "total_sent_sctp_chunk_pad": 0,
        "total_sent_sctp_chunk_reconfig": 0,
        "total_sent_sctp_chunk_sack": 14,
        "total_sent_sctp_chunk_shutdown": 0,
        "total_sent_sctp_chunk_shutdown_ack": 0,
        "total_sent_sctp_chunk_shutdown_complete": 0,
        "total_sent_sctp_chunk_unknown": 0,
        "total_sent_sctp_zero_checksum": 0
    },
    "signaling": {
        "total_received_signaling_pong": 0,
        "total_sent_signaling_ping": 0
    },
    "simulcast": {
        "r0": {
            "rtp": {
                "total_decrypt_skipped_srtp": 0,
                "total_received_rtp": 0,
                "total_received_rtp_byte_size": 0,
                "total_received_rtp_padding": 0,
                "total_received_rtp_padding_size": 0,
                "total_received_rtp_red": 0,
                "total_received_rtp_red_rtx": 0,
                "total_received_rtp_red_ulpfec": 0,
                "total_received_rtp_rtx": 0
            },
            "rtp_hdrext": {
                "total_received_rtp_hdrext_abs_send_time": 0,
                "total_received_rtp_hdrext_audio_level": 0,
                "total_received_rtp_hdrext_av1_rtp_sepc": 0,
                "total_received_rtp_hdrext_color_space": 0,
                "total_received_rtp_hdrext_inband_cn": 0,
                "total_received_rtp_hdrext_playout_delay": 0,
                "total_received_rtp_hdrext_sdes_mid": 0,
                "total_received_rtp_hdrext_sdes_repaired_rtp_stream_id": 0,
                "total_received_rtp_hdrext_sdes_rtp_stream_id": 0,
                "total_received_rtp_hdrext_toffset": 0,
                "total_received_rtp_hdrext_transport_wide_cc": 0,
                "total_received_rtp_hdrext_unknown": 0,
                "total_received_rtp_hdrext_video_content_type": 0,
                "total_received_rtp_hdrext_video_orientation": 0,
                "total_received_rtp_hdrext_video_timing": 0
            }
        },
        "r1": {
            "rtp": {
                "total_decrypt_skipped_srtp": 0,
                "total_received_rtp": 0,
                "total_received_rtp_byte_size": 0,
                "total_received_rtp_padding": 0,
                "total_received_rtp_padding_size": 0,
                "total_received_rtp_red": 0,
                "total_received_rtp_red_rtx": 0,
                "total_received_rtp_red_ulpfec": 0,
                "total_received_rtp_rtx": 0
            },
            "rtp_hdrext": {
                "total_received_rtp_hdrext_abs_send_time": 0,
                "total_received_rtp_hdrext_audio_level": 0,
                "total_received_rtp_hdrext_av1_rtp_sepc": 0,
                "total_received_rtp_hdrext_color_space": 0,
                "total_received_rtp_hdrext_inband_cn": 0,
                "total_received_rtp_hdrext_playout_delay": 0,
                "total_received_rtp_hdrext_sdes_mid": 0,
                "total_received_rtp_hdrext_sdes_repaired_rtp_stream_id": 0,
                "total_received_rtp_hdrext_sdes_rtp_stream_id": 0,
                "total_received_rtp_hdrext_toffset": 0,
                "total_received_rtp_hdrext_transport_wide_cc": 0,
                "total_received_rtp_hdrext_unknown": 0,
                "total_received_rtp_hdrext_video_content_type": 0,
                "total_received_rtp_hdrext_video_orientation": 0,
                "total_received_rtp_hdrext_video_timing": 0
            }
        },
        "r2": {
            "rtp": {
                "total_decrypt_skipped_srtp": 0,
                "total_received_rtp": 0,
                "total_received_rtp_byte_size": 0,
                "total_received_rtp_padding": 0,
                "total_received_rtp_padding_size": 0,
                "total_received_rtp_red": 0,
                "total_received_rtp_red_rtx": 0,
                "total_received_rtp_red_ulpfec": 0,
                "total_received_rtp_rtx": 0
            },
            "rtp_hdrext": {
                "total_received_rtp_hdrext_abs_send_time": 0,
                "total_received_rtp_hdrext_audio_level": 0,
                "total_received_rtp_hdrext_av1_rtp_sepc": 0,
                "total_received_rtp_hdrext_color_space": 0,
                "total_received_rtp_hdrext_inband_cn": 0,
                "total_received_rtp_hdrext_playout_delay": 0,
                "total_received_rtp_hdrext_sdes_mid": 0,
                "total_received_rtp_hdrext_sdes_repaired_rtp_stream_id": 0,
                "total_received_rtp_hdrext_sdes_rtp_stream_id": 0,
                "total_received_rtp_hdrext_toffset": 0,
                "total_received_rtp_hdrext_transport_wide_cc": 0,
                "total_received_rtp_hdrext_unknown": 0,
                "total_received_rtp_hdrext_video_content_type": 0,
                "total_received_rtp_hdrext_video_orientation": 0,
                "total_received_rtp_hdrext_video_timing": 0
            }
        }
    },
    "simulcast_auto": {
        "target_sender_count": 0,
        "total_history_not_ready": 0,
        "total_switched": 0,
        "total_up_trend": 0
    },        
    "spotlight": {
        "total_spotlight_audible_to_focus_delay_us": 0,
        "total_spotlight_focus_failed": 0,
        "total_spotlight_focus_succeeded": 0,
        "total_spotlight_unfocus_audio_no_room": 0,
        "total_spotlight_unfocus_audio_out_packet": 0,
        "total_spotlight_unfocus_audio_publish": 0
    },
    "ice_connection_state": {
        "total_checking_ack": 1,
        "total_checking_duration_ms": 7,
        "total_checking_req": 1,
        "total_checking_to_connected": 1,
        "total_checking_to_disconnected": 0,
        "total_connected_ack": 12,
        "total_connected_req": 12,
        "total_connected_to_checking": 0,
        "total_disconnected_ack": 0,
        "total_disconnected_duration_ms": 0,
        "total_disconnected_req": 0,
        "total_disconnected_to_checking": 0,
        "total_disconnected_to_failed": 0
    },
    "network_status": {
        "unstable_level": 0,
        "total_unstable_level0": 2,
        "total_unstable_level1": 0,
        "total_unstable_level2": 0,
        "total_unstable_level3": 0
    },
    "timestamp": "2021-11-30T01:59:51.372062Z",
    "turn": {
        "total_received_allocate_request": 7,
        "total_received_binding_request": 0,
        "total_received_channel_bind_request": 1,
        "total_received_channel_data": 5802,
        "total_received_create_permission_request": 1,
        "total_received_expired_channel_number": 0,
        "total_received_invalid_channel_data": 0,
        "total_received_refresh_request": 4,
        "total_received_send_indication": 3,
        "total_received_stun_invalid": 0,
        "total_received_stun_unknown": 0,
        "total_received_turn_binding_error": 0,
        "total_received_turn_binding_request": 29,
        "total_received_turn_binding_success": 28,
        "total_received_turn_invalid_stun": 0,
        "total_received_turn_unknown": 0,
        "total_received_turn_unknown_stun": 0,
        "total_received_unknown_channel_number": 0,
        "total_received_unknown_packet": 0,
        "total_sent_allocate_error": 2,
        "total_sent_allocate_success": 2,
        "total_sent_binding_error": 0,
        "total_sent_binding_success": 0,
        "total_sent_channel_bind_error": 0,
        "total_sent_channel_bind_success": 1,
        "total_sent_channel_data": 5644,
        "total_sent_create_permission_error": 0,
        "total_sent_create_permission_success": 1,
        "total_sent_data_indication": 2,
        "total_sent_refresh_error": 0,
        "total_sent_refresh_success": 3,
        "total_sent_turn_binding_error": 0,
        "total_sent_turn_binding_request": 28,
        "total_sent_turn_binding_success": 1,
        "total_sent_turn_unknown": 0,
        "total_turn_udp_allocate_request_401_rate_limit_exceeded": 0
    }
}
```


## GetStatsClient

**x-sora-target**: Sora_20170529.GetStatsClient

指定したクライアントの統計情報を取得します。

* - キー
  - 型
* - channel_id
  - string
* - client_id
  - string

```console
$ curl -sS \
    -X POST \
    http://127.0.0.1:3000/ \
    -H "x-sora-target: Sora_20170529.GetStatsClient" \
    --json '{"channel_id":"sora","client_id":"82TKXKK1M15C76KTF192WVDSVC"}' \
    | jq .
[
    {
        "channel_id": "sora",
        "group_id": "FDYSGDVQ592CK5D4ZMC0W4XXDM",
        "session_id": "FDYSGDVQ592CK5D4ZMC0W4XXDM",
        "client_id": "spam",
        "bundle_id": "DDG3V4NZPH04V02NKDMY97993W",
        "connection_id": "DDG3V4NZPH04V02NKDMY97993W",
        ...
    },
    {
        "channel_id": "sora",
        "group_id": "FDYSGDVQ592CK5D4ZMC0W4XXDM",
        "session_id": "FDYSGDVQ592CK5D4ZMC0W4XXDM",
        "client_id": "spam",
        "bundle_id": "1RKMMEA10923N96N88S1GEKGYR",
        "connection_id": "1RKMMEA10923N96N88S1GEKGYR",
        ...
    }
]
```


## GetStatsAllConnections

**x-sora-target**: Sora_20171101.GetStatsAllConnections

すべての接続の統計情報を取得します。

* - キー
  - 型
  - デフォルト
* - local (オプション)
  - boolean
  - true

`local` はクラスター機能利用時に、全てのノードの情報を取得するかどうかを指定します。

```console
$ curl -sS \
    -X POST \
    http://127.0.0.1:3000/ \
    -H "x-sora-target: Sora_20171101.GetStatsAllConnections" \
    | jq .
[
    {
        "channel_id": "sora",
        "group_id": "FDYSGDVQ592CK5D4ZMC0W4XXDM",
        "session_id": "FDYSGDVQ592CK5D4ZMC0W4XXDM",
        "client_id": "spam",
        "bundle_id": "DDG3V4NZPH04V02NKDMY97993W",
        "connection_id": "DDG3V4NZPH04V02NKDMY97993W",
        ...
    },
    {
        "channel_id": "sora",
        "group_id": "FDYSGDVQ592CK5D4ZMC0W4XXDM",
        "session_id": "FDYSGDVQ592CK5D4ZMC0W4XXDM",
        "client_id": "spam",
        "bundle_id": "1RKMMEA10923N96N88S1GEKGYR",
        "connection_id": "1RKMMEA10923N96N88S1GEKGYR",
        ...
    },
    {
        "channel_id": "zakuro",
        "group_id": "JJJ5BFH7QN6DQBTKSS7JA8ZYQR",
        "session_id": "JJJ5BFH7QN6DQBTKSS7JA8ZYQR",
        "client_id": "EYYX5FGZN17VB647HGYZ27K8MM",
        "bundle_id": "EYYX5FGZN17VB647HGYZ27K8MM",
        "connection_id": "EYYX5FGZN17VB647HGYZ27K8MM",
        ...
    }
]
```
