[OpenSIPS-Devel] [OpenSIPS/opensips] 091149: Added new load support based on active/idle time.

Bogdan-Andrei Iancu bogdan at opensips.org
Mon Jan 29 16:56:06 EST 2018


  Branch: refs/heads/master
  Home:   https://github.com/OpenSIPS/opensips
  Commit: 091149b07902cf770618a9715e6738b9c2714fe5
      https://github.com/OpenSIPS/opensips/commit/091149b07902cf770618a9715e6738b9c2714fe5
  Author: Bogdan-Andrei Iancu <bogdan at opensips.org>
  Date:   2018-01-29 (Mon, 29 Jan 2018)

  Changed paths:
    M modules/proto_ws/ws_common.h
    M net/net_tcp.c
    M net/net_tcp_proc.c
    M net/net_udp.c
    M net/proto_tcp/tcp_common.h
    M pt.c
    M pt.h
    A pt_load.c
    A pt_load.h
    M statistics.c
    M timer.c

  Log Message:
  -----------
  Added new load support based on active/idle time.

The way the internal load is calculated and reported is radically changed. Instead of providing per-interface load and only for SIP related processing, the new "load" support calculates per process the amount of time spent in any processing (outside the I/O reactor) versus total time. The time granularity is 1us. This new system covers any kind of handling (SIP, timer, async, etc) inside a process.
The TCP main and timer handler will also provide load information. In the future, the extra processes (per module) may easily record their load information.
Each process (and globally) reports 3 load statistics:
* realtime load, computed over the last 1s
* last 1 minute load
* last 10 minutes load

Example via "opensipsctl fifo get_statistics load:" :
load:load:: 24
load:load1m:: 19
load:load10m:: 1
load:load-proc-1:: 0
load:load1m-proc-1:: 0
load:load10m-proc-1:: 0
load:load-proc-2:: 0
load:load1m-proc-2:: 0
load:load10m-proc-2:: 0
load:load-proc-3:: 0
load:load1m-proc-3:: 0
load:load10m-proc-3:: 0
load:load-proc-4:: 67
load:load1m-proc-4:: 22
load:load10m-proc-4:: 2
load:load-proc-5:: 79
load:load1m-proc-5:: 24
load:load10m-proc-5:: 2




More information about the Devel mailing list