User Tools

Site Tools


en:statistics_drop

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
en:statistics_drop [2017/11/03 09:21]
Alexander
en:statistics_drop [2019/02/18 12:05] (current)
Vladimir Manov
Line 5: Line 5:
 \\ \\
 \\ \\
-Statistics is sent to a specified HTTP URL over POST request. One request can contain more then one metric report.\\+Statistics is sent to a specified HTTP URL over POST request. URL is set up over provisioning. One request can contain more then one metric report.\\ 
 +Period of statistic send/​accumulation is set up over provisioning. After Statistics is first enabled (incl. STB boot), first accumulation period is randomly increased.\\
 Example JSON request: Example JSON request:
 <code javascript>​ <code javascript>​
Line 11: Line 12:
    {    {
       "​type"​ : "​media",​       "​type"​ : "​media",​
-      "​timestamp"​ : "1509629380",+      "​timestamp"​ : 1509629380,
       "​url"​ : "​udp://​225.100.100.1:​1234",​       "​url"​ : "​udp://​225.100.100.1:​1234",​
 +      "​id"​ : "​233",​
 +      "​proto"​ : "​jsonapi",​
       "​avg_bitrate"​ : 1183564,       "​avg_bitrate"​ : 1183564,
       "​begin"​ : 1509543180,       "​begin"​ : 1509543180,
-      "​discontinuties"​ : 0, 
       "​end"​ : 1509543268,       "​end"​ : 1509543268,
-      "id" : "​233",​ +      "discontinuties" : 0,
-      "​proto"​ : "​jsonapi"​,+
       "​video"​ : {       "​video"​ : {
          "​frames_decoded"​ : 2179,          "​frames_decoded"​ : 2179,
Line 32: Line 33:
    {    {
       "​type"​ : "​network",​       "​type"​ : "​network",​
-      "​timestamp"​ : "1509629381",+      "​timestamp"​ : 1509629381,
       "​duplex"​ : "​full",​       "​duplex"​ : "​full",​
       "​gateway"​ : "​192.168.1.1",​       "​gateway"​ : "​192.168.1.1",​
Line 58: Line 59:
   * //type// - string indentifier of metric type. Currently supported: //​network//,​ //media//.   * //type// - string indentifier of metric type. Currently supported: //​network//,​ //media//.
   * //​timestamp//​ - UNIX Timestamp. Time when measurement was actually done.   * //​timestamp//​ - UNIX Timestamp. Time when measurement was actually done.
 +
 +Other fields are metric specific.
 +
 +====Metrics===
 +==Media==
 +This measurement is done each time media is STOPPING playback. So, it collects data of a single playback session.
 +<code javascript>​
 +    {
 +      "​type"​ : "​media",​
 +      "​timestamp"​ : 1509543268,
 +      "​url"​ : "​udp://​225.100.100.1:​1234",​
 +      "​avg_bitrate"​ : 1183564,
 +      "​begin"​ : 1509543180,
 +      "​end"​ : 1509543268,
 +      "​discontinuties"​ : 0,
 +      "​id"​ : "​233",​
 +      "​proto"​ : "​jsonapi",​
 +      "​video"​ : {
 +         "​frames_decoded"​ : 2179,
 +         "​frames_dropped"​ : 3,
 +         "​frames_failed"​ : 0
 +      },
 +      "​audio"​ : {
 +         "​frames_decoded"​ : 3690,
 +         "​frames_dropped"​ : 0,
 +         "​frames_failed"​ : 0
 +      },
 +   }
 +
 +</​code>​
 +^Field^Type^Description|
 +|//url// |String| URL of played media.|
 +|//​proto//​|String| TVIP TV protocol name, which started stream, if known.|
 +|//​id//​|String|ID of content inside protocol, if known.|
 +|//​avg_bitrate//​ |Int| Average bitrate of stream.|
 +|//begin// |Int|UNIX Timestamp of playback start.|
 +|//end// |Int|UNIX Timestamp of playback end.|
 +|//​discontinuties//​ |Int|For MPEGTS streams (and some HLS stream), number of TS discontinuties.|
 +|//​frames_decoded//​|Int|Total number of decoded video/audio frames.|
 +|//​frames_dropped//​|Int|Total number of dropped video/audio frames.|
 +|//​frames_failed//​|Int|Total number of frame decode errors.|
 +
 +
 +==Network==
 +Network measurement is done in periods defined by provisioning. Statistics is sent for each active (running) interface.\\
 +Example:
 +<code javascript>​
 +    {
 +      "​type"​ : "​network",​
 +      "​timestamp"​ : 1509629381,
 +      "​name"​ : "​eth0",​
 +      "​speed"​ : 100,
 +      "​duplex"​ : "​full",​
 +      "​ip"​ : "​192.168.1.2",​
 +      "​netmask"​ : "​255.255.255.0",​
 +      "​gateway"​ : "​192.168.1.1",​
 +      "​stat"​ : {
 +         "​received_bytes"​ : 778852400,
 +         "​received_discard_packets"​ : 31,
 +         "​received_error_packets"​ : 0,
 +         "​received_multicast_packets"​ : 114356,
 +         "​received_total_packets"​ : 908433,
 +         "​sent_bytes"​ : 74131849,
 +         "​sent_error_packets"​ : 0,
 +         "​sent_total_packets"​ : 541623
 +      }
 +</​code>​
 +^Field^Type^Description|
 +|//​name//​|String|Linux network interface name.|
 +|//​speed//​|Int|Current link connection speed in megabits.|
 +|//​duplex//​|String|Current link duplex(//​full/​half//​).|
 +|//​ip//​|String|Interface IPv4 address.|
 +|//​netmask//​|String|Interface IPv4 netmask.|
 +|//​gateway//​|String|Current active gateway.|
 +|//​received_bytes//​|Int|Total number of bytes received over interface.|
 +|//​received_total_packets//​|Int|Total number of packets received over interface.|
 +|//​received_multicast_packets//​|Int|Total number of multicast packets received over interface.|
 +|//​received_error_packets//​|Int|Total number of receive errors on interface.|
 +|//​received_discard_packets//​|Int|Total number of discarded input packets.|
 +|//​sent_bytes//​|Int|Total number of bytes sent over interface.|
 +|//​sent_total_packets//​|Int|Total number of packets sent over interface.|
 +|//​sent_error_packets//​|Int|Total number of send errors.|
en/statistics_drop.1509690088.txt.gz · Last modified: 2017/11/03 09:21 by Alexander