fixeria has submitted this change. ( 
https://gerrit.osmocom.org/c/erlang/osmo-s1gw/+/38534?usp=email )

Change subject: s1gw_metrics: add counters for PFCP Heartbeat Req/Resp
......................................................................

s1gw_metrics: add counters for PFCP Heartbeat Req/Resp

Change-Id: I61b28c41be4fe051adff1a5315b70409dea9b9cd
---
M include/s1gw_metrics.hrl
M src/pfcp_peer.erl
M src/s1gw_metrics.erl
3 files changed, 15 insertions(+), 0 deletions(-)

Approvals:
  Jenkins Builder: Verified
  pespin: Looks good to me, but someone else must approve
  fixeria: Looks good to me, approved
  laforge: Looks good to me, but someone else must approve




diff --git a/include/s1gw_metrics.hrl b/include/s1gw_metrics.hrl
index bb7043f..1b54018 100644
--- a/include/s1gw_metrics.hrl
+++ b/include/s1gw_metrics.hrl
@@ -1,3 +1,8 @@
+-define(S1GW_CTR_PFCP_HEARTBEAT_REQ_TX, [ctr, pfcp, heartbeat_req, tx]).
+-define(S1GW_CTR_PFCP_HEARTBEAT_REQ_TIMEOUT, [ctr, pfcp, heartbeat_req, 
timeout]).
+-define(S1GW_CTR_PFCP_HEARTBEAT_RESP_RX, [ctr, pfcp, heartbeat_resp, rx]).
+-define(S1GW_CTR_PFCP_HEARTBEAT_REQ_RX, [ctr, pfcp, heartbeat_req, rx]).
+-define(S1GW_CTR_PFCP_HEARTBEAT_RESP_TX, [ctr, pfcp, heartbeat_resp, tx]).
 -define(S1GW_CTR_PFCP_ASSOC_SETUP_REQ_TX, [ctr, pfcp, assoc_setup_req, tx]).
 -define(S1GW_CTR_PFCP_ASSOC_SETUP_REQ_TIMEOUT, [ctr, pfcp, assoc_setup_req, 
timeout]).
 -define(S1GW_CTR_PFCP_ASSOC_SETUP_RESP_RX, [ctr, pfcp, assoc_setup_resp, rx]).
diff --git a/src/pfcp_peer.erl b/src/pfcp_peer.erl
index 9a8709c..1d266d1 100644
--- a/src/pfcp_peer.erl
+++ b/src/pfcp_peer.erl
@@ -314,6 +314,7 @@
         #heartbeat_state{from = From,
                          seq_nr = SeqNr} ->
             ?LOG_NOTICE("Heartbeat Request (SeqNr=~p) timeout", [SeqNr]),
+            s1gw_metrics:ctr_inc(?S1GW_CTR_PFCP_HEARTBEAT_REQ_TIMEOUT),
             if
                 From =/= undefined ->
                     gen_statem:reply(From, {error, timeout});
@@ -521,6 +522,7 @@
     ?LOG_INFO("Tx Heartbeat Request (SeqNr=~p): ~p", [SeqNr, ReqIEs]),
     case send_pdu({heartbeat_request, ReqIEs}, S0) of
         {ok, S1} ->
+            s1gw_metrics:ctr_inc(?S1GW_CTR_PFCP_HEARTBEAT_REQ_TX),
             Pid = spawn(fun heartbeat_request_watchdog/0),
             HB = #heartbeat_state{from = From,
                                   seq_nr = SeqNr,
@@ -547,6 +549,7 @@
                         {_FromIp, _FromPort},
                         #peer_state{heartbeat = HB} = S) ->
     ?LOG_INFO("Rx Heartbeat Response (SeqNr=~p): ~p", [SeqNr, RspIEs]),
+    s1gw_metrics:ctr_inc(?S1GW_CTR_PFCP_HEARTBEAT_RESP_RX),
     case HB of
         #heartbeat_state{from = From,
                          seq_nr = SeqNr,
@@ -571,6 +574,8 @@
                        {FromIp, FromPort},
                        #peer_state{loc_rts = LRTS} = S) ->
     ?LOG_INFO("Rx Heartbeat Request from ~p:~p: ~p", [FromIp, FromPort, 
ReqIEs]),
+    s1gw_metrics:ctr_inc(?S1GW_CTR_PFCP_HEARTBEAT_REQ_RX),
+    s1gw_metrics:ctr_inc(?S1GW_CTR_PFCP_HEARTBEAT_RESP_TX),
     RspIEs = #{recovery_time_stamp => #recovery_time_stamp{time = LRTS}},
     %% Fake #peer_state to force the right destination and SeqNr
     {Result, _} = send_pdu({heartbeat_response, RspIEs},
diff --git a/src/s1gw_metrics.erl b/src/s1gw_metrics.erl
index e065a4a..bba5209 100644
--- a/src/s1gw_metrics.erl
+++ b/src/s1gw_metrics.erl
@@ -48,6 +48,11 @@
 -include("s1gw_metrics.hrl").

 -define(S1GW_COUNTERS, [
+    ?S1GW_CTR_PFCP_HEARTBEAT_REQ_TX,
+    ?S1GW_CTR_PFCP_HEARTBEAT_REQ_TIMEOUT,
+    ?S1GW_CTR_PFCP_HEARTBEAT_RESP_RX,
+    ?S1GW_CTR_PFCP_HEARTBEAT_REQ_RX,
+    ?S1GW_CTR_PFCP_HEARTBEAT_RESP_TX,
     ?S1GW_CTR_PFCP_ASSOC_SETUP_REQ_TX,
     ?S1GW_CTR_PFCP_ASSOC_SETUP_REQ_TIMEOUT,
     ?S1GW_CTR_PFCP_ASSOC_SETUP_RESP_RX,

--
To view, visit https://gerrit.osmocom.org/c/erlang/osmo-s1gw/+/38534?usp=email
To unsubscribe, or for help writing mail filters, visit 
https://gerrit.osmocom.org/settings?usp=email

Gerrit-MessageType: merged
Gerrit-Project: erlang/osmo-s1gw
Gerrit-Branch: master
Gerrit-Change-Id: I61b28c41be4fe051adff1a5315b70409dea9b9cd
Gerrit-Change-Number: 38534
Gerrit-PatchSet: 2
Gerrit-Owner: fixeria <[email protected]>
Gerrit-Reviewer: Jenkins Builder
Gerrit-Reviewer: fixeria <[email protected]>
Gerrit-Reviewer: laforge <[email protected]>
Gerrit-Reviewer: pespin <[email protected]>

Reply via email to