RestComm / jdiameter

RestComm Diameter Stack and Services
http://www.restcomm.com/
GNU Affero General Public License v3.0
112 stars 152 forks source link

Could not find route info for Message key #174

Open Jeevan-Rai opened 1 year ago

Jeevan-Rai commented 1 year ago

I have configured the jDiameter example server to handle requests from the seagull client, CER is getting processed and CEA is also being sent from the server but when the client sends CCR server logs warning

2023-09-19 12:48:25.402 WARN 17128 --- [ncConnull }_2-6] o.j.client.impl.router.RouterImpl : Could not find route info for message key [2482547001.DataChrgVCS.tayana.in;1096298391;120011001]. Table size is [0]

and the control is not entering the "processRequest(Request request)" method. jdiameter message key issue

aferreiraguido commented 1 year ago

It seems your receiving endpoint does not have the credit-control application declared (probably app parameters not matching), I recommend extracting a tcpdump trace from the seagull sending box plus checking if your config file parameters match what jDiameter is receiving, eventually enabling debug logs to get as much as possible from the incoming code flow. At least that is what I do when configuring jDiameter...

Jeevan-Rai commented 1 year ago

If the diameter stack is running after successful CEA the processRequest method request should be called for every request right but the method is not being called, is there any configuration to define the routing table in the server configuration?

aferreiraguido commented 1 year ago

It is a yes if your message is targeting the correct ApplicationID configured as Realm in Network.Realms tag. Are you using the original config-server.xml file (examples/charging-server-simulator/src/main/resources folder)? can you enable DEBUG logs to see in detail why the message is being dropped before routing? also, a tcpdump within the origin machine will help in checking what parameters are you sending in the CCR.

Jeevan-Rai commented 1 year ago

this is my server-config file,

can you please let me know how to configure the message key or the route info in the server, because the log is showing that there is no route info for the message key, the message key is the session-id sent from the client. May I know how to add the route info.. server-jdiameter-config.txt

Jeevan-Rai commented 1 year ago

Is there any documentation that helps for creating a server using jdiameter?

Jeevan-Rai commented 1 year ago

and also how can I enable all the logs can you please help with that?

Jeevan-Rai commented 1 year ago

I have enabled the DEBUG log, I will attach the text file of the log debug logs.txt

aferreiraguido commented 1 year ago

Hello Jeevan-Rai, great you made it! After reviewing the logs, it is there a 3007 - ResultCode.APPLICATION_UNSUPPORTED, meaning that your sending request is not targeting correctly AppId 4, either coz the realm does not match or you're sending a nonmatching 293 - Avp.DESTINATION_HOST in the request, the third possibility is not configured AppId in the server, which is not the case as per your XML config file. With that said, I guess my path would be to review the request message that is being sent from the original server using a tcpdump and a Wireshark or the like, so you'll be able to find out if you're sending that Destination-Host AVP (if sent, not being 10.0.4.61) or the realm is different than "tayana.in". Btw you can check that code yourself in core/jdiameter/impl/src/main/java/org/jdiameter/server/impl/PeerImpl.java

aferreiraguido commented 1 year ago

Please disregard my last message, I just found that you're not setting the origin IP 10.0.5.84 as your peer in Networks.Realms.Realm tayana.in, also found in the logs that you reset the attempt_connect of the Neetworks.Peers.Peer aaa://10.0.5.84 (compared to the original config file you sent previously) and thus the origin host is now initiating the connection.

Jeevan-Rai commented 12 months ago

The issue is resolved, the server has configured a listener for vendor-id: 10415 and application-id: 4 but the seagull client was sending a request with vendor-id: 0 and application-id: 4, so I configured another listener for the mentioned vendor id and application id.

Thank You

Jeevan-Rai commented 12 months ago

I am facing trouble with sending CCR-T from the seagull client I will attach the log file can you please help me to resolve it?

ro_ccr_cca_client.2022-02-16.10-30-10.874.log