Skip to main content
Home
for DLMS smart meters

Main navigation

  • Home
  • Products
  • About us
  • Open Source
  • Community
  • Forum
  • Downloads
User account menu
  • Log in

Breadcrumb

  1. Home
  2. Agent Failed To Start

Agent failed to start

By Bram, 14 February, 2024
Forums
Gurux.DLMS.AMI

Hi,
I've setup all the applications due the instructions and running the web interface but the agent fails to start.

This the agent CMD prompt outputs:
-----------------------------------------------------------------------------------------------
info: Gurux.DLMS.AMI.Agent.Worker.GXAgentWorker[0]
Starting Gurux.DLMS.Agent.Worker version 4.0.2310.2302
info: Gurux.DLMS.AMI.Agent.Worker.GXAgentWorker[0]
Waiting tasks from the Gurux.DLMS.AMI.
info: Gurux.DLMS.AMI.Agent.Worker.GXAgentWorker[0]
Reader settings: Active: True
Threads: 10
TaskWaitTime: 100000
AliveTime: 2
TraceLevel: Off

info: Gurux.DLMS.AMI.Agent.Worker.GXAgentWorker[0]
Listener settings: Active: False
Threads: 100
IdentifyWaitTime: 0
PreEstablished: False
MediaType:
MediaSettings:
Interface: 0
UseLogicalNameReferencing: True
ClientAddress: 16
ServerAddress: 1
Authentication: 0
Password:
Security: 0
InvocationCounter:
TraceLevel: Off
ExpirationTime: 0
DeviceNameMethod:
DeviceTemplateMethod:
DefaultDeviceTemplate:
ScriptMethod:
GatewayScriptMethod:
ConnectionUpTime:

info: Gurux.DLMS.AMI.Agent.Worker.GXAgentWorker[0]
Notify settings: Active: False
Threads: 100
MediaType:
MediaSettings:
Interface: 0
UseLogicalNameReferencing: True
ExpirationTime: 10
DeviceNameMethod:
DeviceTemplateMethod:
DefaultDeviceTemplate:
ScriptMethod:
TraceLevel: Off
ConnectionUpTime:

info: Gurux.DLMS.AMI.Agent.Worker.GXAgentWorker[0]
Agent 'DESKTOP-GLSGI5U' started.
fail: Gurux.DLMS.AMI.Agent.Worker.GXAgentWorker[0]
14-2-2024 19:49:43 Install new version failed. Exception of type 'Gurux.DLMS.AMI.Shared.GXAmiException' was thrown.
info: Gurux.DLMS.AMI.Agent.Worker.Notifier.GXNotifyService[0]
Notify service is not used.
info: Gurux.DLMS.AMI.Agent.Worker.AutoConnect.GXAutoConnectService[0]
Auto connect service is not used.
info: Gurux.DLMS.AMI.Agent.Worker.GXAgentWorker[0]
Agent started
-----------------------------------------------------------------------------------------------

I see some failure on the AMI:
info: Microsoft.AspNetCore.Authentication.JwtBearer.JwtBearerHandler[7]
IdentityServerJwtBearer was not authenticated. Failure message: No SecurityTokenValidator available for token.

This is the console showing as output from the AMI application:
-----------------------------------------------------------------------------------------------
info: Microsoft.AspNetCore.Routing.EndpointMiddleware[1]
Executed endpoint '/guruxami'
info: Microsoft.AspNetCore.Hosting.Diagnostics[2]
Request finished HTTP/1.1 GET https://localhost:8001/guruxami?id=_X2h05JHUddz1vr53qAuQQ - 101 - - 71746.5849ms
info: Microsoft.AspNetCore.Hosting.Diagnostics[1]
Request starting HTTP/1.1 POST https://localhost:8001/api/Agent/UpdateStatus - application/json 45
info: Microsoft.EntityFrameworkCore.Database.Command[20101]
Executed DbCommand (1ms) [Parameters=[@__key_0='?' (Size = 200)], CommandType='Text', CommandTimeout='30']
SELECT `g`.`Key`, `g`.`ClientId`, `g`.`ConsumedTime`, `g`.`CreationTime`, `g`.`Data`, `g`.`Description`, `g`.`Expiration`, `g`.`SessionId`, `g`.`SubjectId`, `g`.`Type`
FROM `GXPersistedGrants` AS `g`
WHERE `g`.`Key` = @__key_0
info: Microsoft.EntityFrameworkCore.Database.Command[20101]
Executed DbCommand (1ms) [Parameters=[@__p_0='?' (Size = 255)], CommandType='Text', CommandTimeout='30']
SELECT `g`.`Id`, `g`.`AccessFailedCount`, `g`.`ConcurrencyStamp`, `g`.`CreationTime`, `g`.`DateOfBirth`, `g`.`Email`, `g`.`EmailConfirmed`, `g`.`GivenName`, `g`.`Language`, `g`.`IPAddress`, `g`.`LastLogin`, `g`.`LockoutEnabled`, `g`.`LockoutEnd`, `g`.`NormalizedEmail`, `g`.`NormalizedUserName`, `g`.`PasswordHash`, `g`.`PhoneNumber`, `g`.`PhoneNumberConfirmed`, `g`.`ProfilePicture`, `g`.`SecurityStamp`, `g`.`Surname`, `g`.`TwoFactorEnabled`, `g`.`Updated`, `g`.`UserName`
FROM `GXUser` AS `g`
WHERE `g`.`Id` = @__p_0
LIMIT 1
info: Microsoft.AspNetCore.Authentication.JwtBearer.JwtBearerHandler[7]
IdentityServerJwtBearer was not authenticated. Failure message: No SecurityTokenValidator available for token.
info: Microsoft.AspNetCore.Authentication.JwtBearer.JwtBearerHandler[7]
IdentityServerJwtBearer was not authenticated. Failure message: No SecurityTokenValidator available for token.
info: Gurux.DLMS.AMI.Server.Midlewares.RequestResponseLoggingMiddleware[0]
Unknown action '/api/Agent/UpdateStatus'
info: Microsoft.AspNetCore.Routing.EndpointMiddleware[0]
Executing endpoint 'Gurux.DLMS.AMI.Server.Controllers.AgentController.Post (Gurux.DLMS.AMI.Server)'
info: Microsoft.AspNetCore.Mvc.Infrastructure.ControllerActionInvoker[102]
Route matched with {action = "Post", controller = "Agent", page = "", area = ""}. Executing controller action with signature System.Threading.Tasks.Task`1[Microsoft.AspNetCore.Mvc.ActionResult] Post(Gurux.DLMS.AMI.Shared.Rest.UpdateAgentStatus) on controller Gurux.DLMS.AMI.Server.Controllers.AgentController (Gurux.DLMS.AMI.Server).
info: Microsoft.AspNetCore.Mvc.StatusCodeResult[1]
Executing StatusCodeResult, setting HTTP status code 200
info: Microsoft.AspNetCore.Mvc.Infrastructure.ControllerActionInvoker[105]
Executed action Gurux.DLMS.AMI.Server.Controllers.AgentController.Post (Gurux.DLMS.AMI.Server) in 20.81ms
info: Microsoft.AspNetCore.Routing.EndpointMiddleware[1]
Executed endpoint 'Gurux.DLMS.AMI.Server.Controllers.AgentController.Post (Gurux.DLMS.AMI.Server)'
info: Microsoft.AspNetCore.Hosting.Diagnostics[2]
Request finished HTTP/1.1 POST https://localhost:8001/api/Agent/UpdateStatus - 200 0 - 30.7019ms
info: Microsoft.AspNetCore.Hosting.Diagnostics[1]
Request starting HTTP/2 POST https://localhost:8001/guruxami/negotiate?negotiateVersion=1 - - 0
info: Microsoft.EntityFrameworkCore.Database.Command[20101]
Executed DbCommand (1ms) [Parameters=[@__key_0='?' (Size = 200)], CommandType='Text', CommandTimeout='30']
SELECT `g`.`Key`, `g`.`ClientId`, `g`.`ConsumedTime`, `g`.`CreationTime`, `g`.`Data`, `g`.`Description`, `g`.`Expiration`, `g`.`SessionId`, `g`.`SubjectId`, `g`.`Type`
FROM `GXPersistedGrants` AS `g`
WHERE `g`.`Key` = @__key_0
info: Microsoft.EntityFrameworkCore.Database.Command[20101]
Executed DbCommand (1ms) [Parameters=[@__p_0='?' (Size = 255)], CommandType='Text', CommandTimeout='30']
SELECT `g`.`Id`, `g`.`AccessFailedCount`, `g`.`ConcurrencyStamp`, `g`.`CreationTime`, `g`.`DateOfBirth`, `g`.`Email`, `g`.`EmailConfirmed`, `g`.`GivenName`, `g`.`Language`, `g`.`IPAddress`, `g`.`LastLogin`, `g`.`LockoutEnabled`, `g`.`LockoutEnd`, `g`.`NormalizedEmail`, `g`.`NormalizedUserName`, `g`.`PasswordHash`, `g`.`PhoneNumber`, `g`.`PhoneNumberConfirmed`, `g`.`ProfilePicture`, `g`.`SecurityStamp`, `g`.`Surname`, `g`.`TwoFactorEnabled`, `g`.`Updated`, `g`.`UserName`
FROM `GXUser` AS `g`
WHERE `g`.`Id` = @__p_0
LIMIT 1
info: Microsoft.AspNetCore.Authentication.JwtBearer.JwtBearerHandler[7]
IdentityServerJwtBearer was not authenticated. Failure message: No SecurityTokenValidator available for token.
info: Microsoft.AspNetCore.Authentication.JwtBearer.JwtBearerHandler[7]
IdentityServerJwtBearer was not authenticated. Failure message: No SecurityTokenValidator available for token.
info: Microsoft.AspNetCore.Routing.EndpointMiddleware[0]
Executing endpoint '/guruxami/negotiate'
info: Microsoft.AspNetCore.Routing.EndpointMiddleware[1]
Executed endpoint '/guruxami/negotiate'
info: Microsoft.AspNetCore.Hosting.Diagnostics[2]
Request finished HTTP/2 POST https://localhost:8001/guruxami/negotiate?negotiateVersion=1 - 200 316 application/json 9.5517ms
info: Microsoft.AspNetCore.Hosting.Diagnostics[1]
Request starting HTTP/1.1 GET https://localhost:8001/guruxami?id=fDsn6g6bmYxa3leAlbCegw - - -
info: Microsoft.EntityFrameworkCore.Database.Command[20101]
Executed DbCommand (1ms) [Parameters=[@__key_0='?' (Size = 200)], CommandType='Text', CommandTimeout='30']
SELECT `g`.`Key`, `g`.`ClientId`, `g`.`ConsumedTime`, `g`.`CreationTime`, `g`.`Data`, `g`.`Description`, `g`.`Expiration`, `g`.`SessionId`, `g`.`SubjectId`, `g`.`Type`
FROM `GXPersistedGrants` AS `g`
WHERE `g`.`Key` = @__key_0
info: Microsoft.EntityFrameworkCore.Database.Command[20101]
Executed DbCommand (1ms) [Parameters=[@__p_0='?' (Size = 255)], CommandType='Text', CommandTimeout='30']
SELECT `g`.`Id`, `g`.`AccessFailedCount`, `g`.`ConcurrencyStamp`, `g`.`CreationTime`, `g`.`DateOfBirth`, `g`.`Email`, `g`.`EmailConfirmed`, `g`.`GivenName`, `g`.`Language`, `g`.`IPAddress`, `g`.`LastLogin`, `g`.`LockoutEnabled`, `g`.`LockoutEnd`, `g`.`NormalizedEmail`, `g`.`NormalizedUserName`, `g`.`PasswordHash`, `g`.`PhoneNumber`, `g`.`PhoneNumberConfirmed`, `g`.`ProfilePicture`, `g`.`SecurityStamp`, `g`.`Surname`, `g`.`TwoFactorEnabled`, `g`.`Updated`, `g`.`UserName`
FROM `GXUser` AS `g`
WHERE `g`.`Id` = @__p_0
LIMIT 1
info: Microsoft.AspNetCore.Authentication.JwtBearer.JwtBearerHandler[7]
IdentityServerJwtBearer was not authenticated. Failure message: No SecurityTokenValidator available for token.
info: Microsoft.AspNetCore.Authentication.JwtBearer.JwtBearerHandler[7]
IdentityServerJwtBearer was not authenticated. Failure message: No SecurityTokenValidator available for token.
info: Microsoft.AspNetCore.Routing.EndpointMiddleware[0]
Executing endpoint '/guruxami'
info: Microsoft.AspNetCore.Hosting.Diagnostics[1]
Request starting HTTP/1.1 POST https://localhost:8001/api/Agent/UpdateStatus - application/json 56
info: Microsoft.EntityFrameworkCore.Database.Command[20101]
Executed DbCommand (1ms) [Parameters=[@__key_0='?' (Size = 200)], CommandType='Text', CommandTimeout='30']
SELECT `g`.`Key`, `g`.`ClientId`, `g`.`ConsumedTime`, `g`.`CreationTime`, `g`.`Data`, `g`.`Description`, `g`.`Expiration`, `g`.`SessionId`, `g`.`SubjectId`, `g`.`Type`
FROM `GXPersistedGrants` AS `g`
WHERE `g`.`Key` = @__key_0
info: Microsoft.EntityFrameworkCore.Database.Command[20101]
Executed DbCommand (1ms) [Parameters=[@__p_0='?' (Size = 255)], CommandType='Text', CommandTimeout='30']
SELECT `g`.`Id`, `g`.`AccessFailedCount`, `g`.`ConcurrencyStamp`, `g`.`CreationTime`, `g`.`DateOfBirth`, `g`.`Email`, `g`.`EmailConfirmed`, `g`.`GivenName`, `g`.`Language`, `g`.`IPAddress`, `g`.`LastLogin`, `g`.`LockoutEnabled`, `g`.`LockoutEnd`, `g`.`NormalizedEmail`, `g`.`NormalizedUserName`, `g`.`PasswordHash`, `g`.`PhoneNumber`, `g`.`PhoneNumberConfirmed`, `g`.`ProfilePicture`, `g`.`SecurityStamp`, `g`.`Surname`, `g`.`TwoFactorEnabled`, `g`.`Updated`, `g`.`UserName`
FROM `GXUser` AS `g`
WHERE `g`.`Id` = @__p_0
LIMIT 1
info: Microsoft.AspNetCore.Authentication.JwtBearer.JwtBearerHandler[7]
IdentityServerJwtBearer was not authenticated. Failure message: No SecurityTokenValidator available for token.
info: Microsoft.AspNetCore.Authentication.JwtBearer.JwtBearerHandler[7]
IdentityServerJwtBearer was not authenticated. Failure message: No SecurityTokenValidator available for token.
info: Gurux.DLMS.AMI.Server.Midlewares.RequestResponseLoggingMiddleware[0]
Unknown action '/api/Agent/UpdateStatus'
info: Microsoft.AspNetCore.Routing.EndpointMiddleware[0]
Executing endpoint 'Gurux.DLMS.AMI.Server.Controllers.AgentController.Post (Gurux.DLMS.AMI.Server)'
info: Microsoft.AspNetCore.Mvc.Infrastructure.ControllerActionInvoker[102]
Route matched with {action = "Post", controller = "Agent", page = "", area = ""}. Executing controller action with signature System.Threading.Tasks.Task`1[Microsoft.AspNetCore.Mvc.ActionResult] Post(Gurux.DLMS.AMI.Shared.Rest.UpdateAgentStatus) on controller Gurux.DLMS.AMI.Server.Controllers.AgentController (Gurux.DLMS.AMI.Server).
info: Microsoft.AspNetCore.Mvc.StatusCodeResult[1]
Executing StatusCodeResult, setting HTTP status code 200
info: Microsoft.AspNetCore.Mvc.Infrastructure.ControllerActionInvoker[105]
Executed action Gurux.DLMS.AMI.Server.Controllers.AgentController.Post (Gurux.DLMS.AMI.Server) in 21.8605ms
info: Microsoft.AspNetCore.Routing.EndpointMiddleware[1]
Executed endpoint 'Gurux.DLMS.AMI.Server.Controllers.AgentController.Post (Gurux.DLMS.AMI.Server)'
info: Microsoft.AspNetCore.Hosting.Diagnostics[2]
Request finished HTTP/1.1 POST https://localhost:8001/api/Agent/UpdateStatus - 200 0 - 30.5411ms
info: Microsoft.AspNetCore.Hosting.Diagnostics[1]
Request starting HTTP/1.1 GET https://localhost:8001/api/Agent/?Id=03358a24-f353-46cd-a15e-94a63324e1… - - -
info: Microsoft.EntityFrameworkCore.Database.Command[20101]
Executed DbCommand (1ms) [Parameters=[@__key_0='?' (Size = 200)], CommandType='Text', CommandTimeout='30']
SELECT `g`.`Key`, `g`.`ClientId`, `g`.`ConsumedTime`, `g`.`CreationTime`, `g`.`Data`, `g`.`Description`, `g`.`Expiration`, `g`.`SessionId`, `g`.`SubjectId`, `g`.`Type`
FROM `GXPersistedGrants` AS `g`
WHERE `g`.`Key` = @__key_0
info: Microsoft.EntityFrameworkCore.Database.Command[20101]
Executed DbCommand (1ms) [Parameters=[@__p_0='?' (Size = 255)], CommandType='Text', CommandTimeout='30']
SELECT `g`.`Id`, `g`.`AccessFailedCount`, `g`.`ConcurrencyStamp`, `g`.`CreationTime`, `g`.`DateOfBirth`, `g`.`Email`, `g`.`EmailConfirmed`, `g`.`GivenName`, `g`.`Language`, `g`.`IPAddress`, `g`.`LastLogin`, `g`.`LockoutEnabled`, `g`.`LockoutEnd`, `g`.`NormalizedEmail`, `g`.`NormalizedUserName`, `g`.`PasswordHash`, `g`.`PhoneNumber`, `g`.`PhoneNumberConfirmed`, `g`.`ProfilePicture`, `g`.`SecurityStamp`, `g`.`Surname`, `g`.`TwoFactorEnabled`, `g`.`Updated`, `g`.`UserName`
FROM `GXUser` AS `g`
WHERE `g`.`Id` = @__p_0
LIMIT 1
info: Microsoft.AspNetCore.Authentication.JwtBearer.JwtBearerHandler[7]
IdentityServerJwtBearer was not authenticated. Failure message: No SecurityTokenValidator available for token.
info: Microsoft.AspNetCore.Authentication.JwtBearer.JwtBearerHandler[7]
IdentityServerJwtBearer was not authenticated. Failure message: No SecurityTokenValidator available for token.
info: Gurux.DLMS.AMI.Server.Midlewares.RequestResponseLoggingMiddleware[0]
Unknown path '/api/Agent/'
info: Microsoft.AspNetCore.Routing.EndpointMiddleware[0]
Executing endpoint 'Gurux.DLMS.AMI.Server.Controllers.AgentController.Get (Gurux.DLMS.AMI.Server)'
info: Microsoft.AspNetCore.Mvc.Infrastructure.ControllerActionInvoker[102]
Route matched with {action = "Get", controller = "Agent", page = "", area = ""}. Executing controller action with signature System.Threading.Tasks.Task`1[Microsoft.AspNetCore.Mvc.ActionResult`1[Gurux.DLMS.AMI.Shared.Rest.GetAgentResponse]] Get(System.Guid) on controller Gurux.DLMS.AMI.Server.Controllers.AgentController (Gurux.DLMS.AMI.Server).
info: Microsoft.AspNetCore.Mvc.Infrastructure.ObjectResultExecutor[1]
Executing ObjectResult, writing value of type 'Gurux.DLMS.AMI.Shared.Rest.GetAgentResponse'.
info: Microsoft.AspNetCore.Mvc.Infrastructure.ControllerActionInvoker[105]
Executed action Gurux.DLMS.AMI.Server.Controllers.AgentController.Get (Gurux.DLMS.AMI.Server) in 6.5643ms
info: Microsoft.AspNetCore.Routing.EndpointMiddleware[1]
Executed endpoint 'Gurux.DLMS.AMI.Server.Controllers.AgentController.Get (Gurux.DLMS.AMI.Server)'
info: Microsoft.AspNetCore.Hosting.Diagnostics[2]
Request finished HTTP/1.1 GET https://localhost:8001/api/Agent/?Id=03358a24-f353-46cd-a15e-94a63324e1… - 200 - application/json;+charset=utf-8 15.7793ms
info: Microsoft.AspNetCore.Hosting.Diagnostics[1]
Request starting HTTP/1.1 POST https://localhost:8001/api/Agent/Update - application/json 1738
info: Microsoft.EntityFrameworkCore.Database.Command[20101]
Executed DbCommand (1ms) [Parameters=[@__key_0='?' (Size = 200)], CommandType='Text', CommandTimeout='30']
SELECT `g`.`Key`, `g`.`ClientId`, `g`.`ConsumedTime`, `g`.`CreationTime`, `g`.`Data`, `g`.`Description`, `g`.`Expiration`, `g`.`SessionId`, `g`.`SubjectId`, `g`.`Type`
FROM `GXPersistedGrants` AS `g`
WHERE `g`.`Key` = @__key_0
info: Microsoft.EntityFrameworkCore.Database.Command[20101]
Executed DbCommand (1ms) [Parameters=[@__p_0='?' (Size = 255)], CommandType='Text', CommandTimeout='30']
SELECT `g`.`Id`, `g`.`AccessFailedCount`, `g`.`ConcurrencyStamp`, `g`.`CreationTime`, `g`.`DateOfBirth`, `g`.`Email`, `g`.`EmailConfirmed`, `g`.`GivenName`, `g`.`Language`, `g`.`IPAddress`, `g`.`LastLogin`, `g`.`LockoutEnabled`, `g`.`LockoutEnd`, `g`.`NormalizedEmail`, `g`.`NormalizedUserName`, `g`.`PasswordHash`, `g`.`PhoneNumber`, `g`.`PhoneNumberConfirmed`, `g`.`ProfilePicture`, `g`.`SecurityStamp`, `g`.`Surname`, `g`.`TwoFactorEnabled`, `g`.`Updated`, `g`.`UserName`
FROM `GXUser` AS `g`
WHERE `g`.`Id` = @__p_0
LIMIT 1
info: Microsoft.AspNetCore.Authentication.JwtBearer.JwtBearerHandler[7]
IdentityServerJwtBearer was not authenticated. Failure message: No SecurityTokenValidator available for token.
info: Microsoft.AspNetCore.Authentication.JwtBearer.JwtBearerHandler[7]
IdentityServerJwtBearer was not authenticated. Failure message: No SecurityTokenValidator available for token.
info: Microsoft.AspNetCore.Routing.EndpointMiddleware[0]
Executing endpoint 'Gurux.DLMS.AMI.Server.Controllers.AgentController.Post (Gurux.DLMS.AMI.Server)'
info: Microsoft.AspNetCore.Mvc.Infrastructure.ControllerActionInvoker[102]
Route matched with {action = "Post", controller = "Agent", page = "", area = ""}. Executing controller action with signature System.Threading.Tasks.Task`1[Microsoft.AspNetCore.Mvc.ActionResult`1[Gurux.DLMS.AMI.Shared.Rest.UpdateAgentResponse]] Post(Gurux.DLMS.AMI.Shared.Rest.UpdateAgent) on controller Gurux.DLMS.AMI.Server.Controllers.AgentController (Gurux.DLMS.AMI.Server).
info: Microsoft.AspNetCore.Mvc.Infrastructure.ControllerActionInvoker[105]
Executed action Gurux.DLMS.AMI.Server.Controllers.AgentController.Post (Gurux.DLMS.AMI.Server) in 6.7923ms
info: Microsoft.AspNetCore.Routing.EndpointMiddleware[1]
Executed endpoint 'Gurux.DLMS.AMI.Server.Controllers.AgentController.Post (Gurux.DLMS.AMI.Server)'
info: Microsoft.AspNetCore.Hosting.Diagnostics[2]
Request finished HTTP/1.1 POST https://localhost:8001/api/Agent/Update - 500 - application/json 41.2922ms
info: Microsoft.AspNetCore.Hosting.Diagnostics[1]
Request starting HTTP/1.1 POST https://localhost:8001/api/Task/Next - application/json 50
info: Microsoft.EntityFrameworkCore.Database.Command[20101]
Executed DbCommand (1ms) [Parameters=[@__key_0='?' (Size = 200)], CommandType='Text', CommandTimeout='30']
SELECT `g`.`Key`, `g`.`ClientId`, `g`.`ConsumedTime`, `g`.`CreationTime`, `g`.`Data`, `g`.`Description`, `g`.`Expiration`, `g`.`SessionId`, `g`.`SubjectId`, `g`.`Type`
FROM `GXPersistedGrants` AS `g`
WHERE `g`.`Key` = @__key_0
info: Microsoft.EntityFrameworkCore.Database.Command[20101]
Executed DbCommand (1ms) [Parameters=[@__p_0='?' (Size = 255)], CommandType='Text', CommandTimeout='30']
SELECT `g`.`Id`, `g`.`AccessFailedCount`, `g`.`ConcurrencyStamp`, `g`.`CreationTime`, `g`.`DateOfBirth`, `g`.`Email`, `g`.`EmailConfirmed`, `g`.`GivenName`, `g`.`Language`, `g`.`IPAddress`, `g`.`LastLogin`, `g`.`LockoutEnabled`, `g`.`LockoutEnd`, `g`.`NormalizedEmail`, `g`.`NormalizedUserName`, `g`.`PasswordHash`, `g`.`PhoneNumber`, `g`.`PhoneNumberConfirmed`, `g`.`ProfilePicture`, `g`.`SecurityStamp`, `g`.`Surname`, `g`.`TwoFactorEnabled`, `g`.`Updated`, `g`.`UserName`
FROM `GXUser` AS `g`
WHERE `g`.`Id` = @__p_0
LIMIT 1
info: Microsoft.AspNetCore.Authentication.JwtBearer.JwtBearerHandler[7]
IdentityServerJwtBearer was not authenticated. Failure message: No SecurityTokenValidator available for token.
info: Microsoft.AspNetCore.Authentication.JwtBearer.JwtBearerHandler[7]
IdentityServerJwtBearer was not authenticated. Failure message: No SecurityTokenValidator available for token.
info: Microsoft.AspNetCore.Routing.EndpointMiddleware[0]
Executing endpoint 'Gurux.DLMS.AMI.Server.Repository.TaskController.Post (Gurux.DLMS.AMI.Server)'
info: Microsoft.AspNetCore.Mvc.Infrastructure.ControllerActionInvoker[102]
Route matched with {action = "Post", controller = "Task", page = "", area = ""}. Executing controller action with signature System.Threading.Tasks.Task`1[Microsoft.AspNetCore.Mvc.ActionResult`1[Gurux.DLMS.AMI.Shared.Rest.GetNextTaskResponse]] Post(Gurux.DLMS.AMI.Shared.Rest.GetNextTask) on controller Gurux.DLMS.AMI.Server.Repository.TaskController (Gurux.DLMS.AMI.Server).
info: Microsoft.AspNetCore.Mvc.Infrastructure.ObjectResultExecutor[1]
Executing ObjectResult, writing value of type 'Gurux.DLMS.AMI.Shared.Rest.GetNextTaskResponse'.
info: Microsoft.AspNetCore.Mvc.Infrastructure.ControllerActionInvoker[105]
Executed action Gurux.DLMS.AMI.Server.Repository.TaskController.Post (Gurux.DLMS.AMI.Server) in 19.035ms
info: Microsoft.AspNetCore.Routing.EndpointMiddleware[1]
Executed endpoint 'Gurux.DLMS.AMI.Server.Repository.TaskController.Post (Gurux.DLMS.AMI.Server)'
info: Microsoft.AspNetCore.Hosting.Diagnostics[2]
Request finished HTTP/1.1 POST https://localhost:8001/api/Task/Next - 200 - application/json;+charset=utf-8 36.4911ms
info: Gurux.DLMS.AMI.Scheduler.GXSchedulerService[0]
Scheduler service is working.
info: Gurux.DLMS.AMI.Scheduler.GXSchedulerService[0]
Scheduler service is working.
info: Gurux.DLMS.AMI.Scheduler.GXSchedulerService[0]
Scheduler service is working.
info: Gurux.DLMS.AMI.Scheduler.GXSchedulerService[0]
-----------------------------------------------------------------------------------------------

Any help here would be great!
Regards,

Bram

1 year 9 months ago

Just to explain, i want to…

Just to explain, i want to use the agent to listen to port 4000, the meter should connect to this port over IOT.
So the agent has to wait for a incomming connection.

I'm not sure this is the right approach to this.....

Profile picture for user Kurumi

Kurumi

1 year 9 months ago

Hi, This looks like your…

Hi,

This looks like your agent is using Agent Access Token that is not found in Gurux.DLMS.AMI. This usually happens when the server database is cleared and a new token is not generated for the agent. You can see all agents: https://{URSL}/Agent

Try this:
Make sure that your Agent version is 4.0.2401.2603. Download the latest if you are not sure.

Select https://{URSL}/AgentAdd

and generate a new agent access token.

Start the agent and give this token when it's asked. Let me know if you have any problems.

BR,
Mikko

Profile picture for user Kurumi

Kurumi

1 year 9 months ago

Hi, Is your meter…

Hi,
Is your meter establishing connection for the port 4000 (Auto connect)
https://www.gurux.fi/Gurux.DLMS.Objects.GXDLMSAutoConnect

OR
is the meter sending push messages to this port?
https://www.gurux.fi/Gurux.DLMS.Objects.GXDLMSPushSetup

BR,
Mikko

Bram

1 year 9 months ago

Hi Mikko, Thanks for your…

Hi Mikko,

Thanks for your fast reply, I got some error at some point when removing an agent.
Something with the database, I think I will clear the database and run the docker commandline again.

I start the AMI application using:
docker run --rm -it -e "Database:Type=MySQL" -e "Database:Settings=Server=DATABASE_SERVER;Database=DATABASE_NAME;UID=USER_ID;Password=DATABASE_PASSWORD" -e "IdentityServer:Key:Type=Development" -p 8000:80 -p 8001:443 -e ASPNETCORE_URLS="https://+;http://+" -e ASPNETCORE_HTTPS_PORT=8001 -e ASPNETCORE_ENVIRONMENT=Development -e ASPNETCORE_Kestrel__Certificates__Default__Password="YOUR_CREDENTIAL_PASSWORD" -e ASPNETCORE_Kestrel__Certificates__Default__Path=/https/Gurux.DLMS.AMI.Server.pfx -v %USERPROFILE%\.aspnet\https:/https/ guruxorg/guruxdlmsamiserver:latest

Do I need to change YOUR_CREDENTIAL_PASSWORD to my windows user acount password?

Will test again tonight.

Best Regards,
Bram

Profile picture for user Kurumi

Kurumi

1 year 9 months ago

Hi, This docker is included…

Hi,

This docker is included for the default tests. Check the system log: https://{URL}/logs
All errors are logged there. Let me know if there are any errors where error level is Error. You can skip the Warning, Info and Verbose errors.

BR,
Mikko

Bram

1 year 9 months ago

Hi, I see no error at the…

Hi,

I see no error at the logs.

With the new agent i see:
15-2-2024 18:24:58 Install new version failed. {"type":"https://tools.ietf.org/html/rfc9110#section-15.5.1","title":"One or more validation errors occurred.","status":400,"errors":{"Agents[0].Version":["The field Version must be a string with a maximum length of 20."]},"traceId":"00-bd9b2ae8dfd4e7432e5c0f65821834f6-39cf1a73d064670b-00"}

But after setting up the listener it starts listening at the port anyway:
info: Gurux.DLMS.AMI.Agent.Worker.AutoConnect.GXAutoConnectService[0]
Listening incoming connections in port:40000

I can connect with GXDLMS Director:
Client 127.0.0.1:58783 is connected.
info: Gurux.DLMS.AMI.Agent.Worker.AutoConnect.GXAutoConnectService[0]
7E A0 07 03 21 93 0F 01 7E

Then it hangs and the director gives an error:
Failed to receive reply from the device in given time.

From the supplier I got 4 connections, all set to myserverip:40000: (i wrote 4000 wrong before)
Push setup - Interval_1
Push setup - On Alarm
Push setup - On Connectivity
Push setup - On Installation

Bram

1 year 9 months ago

Edit, Maybe it is already…

Edit,
Maybe it is already working, tomorrow I get a real meter to test.

I tought I could use the director as a simulator to connect to the AMI, I think this is not the case?

At the logs I now have a Task to read the clock:
Ch. 0 Clock object #1 0.0.1.0.0.255 Clock

Is this automatically triggered on connection of the device?
So when the meter connects to the AMI, it should automatically read the clock object?

Sorry for all the questions, I'm new to the DLMS and fighting a bit in the maze of all documentation :P.

Best regards,
Bram

Profile picture for user Kurumi

Kurumi

1 year 9 months ago

Hi Bram, Can you describe…

Hi Bram,

Can you describe step by step what you did to get this Install new version failed error? This is tested with multiple different environments and can't be repeated.

Now you can listen to the push events. You can't establish the connection with GXDLMSDirector. WIth push messages there are no connection between the meter and agent. Meter just sends the push messages.

After you have the real meter can you read the capture objects? If you can't read them can you add the hex trace so I can check the correct settings? You can see the hex trace in the CLI.

BR,
Mikko

Bram

1 year 9 months ago

Hi Mikko, I removed the…

Hi Mikko,

I removed the database and created it again.

Also removed the https certificate manually, but not really succesfull since recreating it with another password did not work. (The docker command failed)
Since I first created the certificate with YOUR_CREDENTIAL_PASSWORD, I used this in the docker command and it worked again.

Then used the docker command again and the database was recreated.
After that downloaded the agent from the webinterface.
What is strange since I did exactly the same 3 days ago on first installation and got an older agent version.

I will test with the meter tonight and let you know.

Best regards,
Bram

Bram

1 year 9 months ago

They used the wrong apn so…

They used the wrong apn so going to take some time...

  • Create new account
  • Reset your password

Hire Us!

Latest Releases

  • Tue, 12/02/2025 - 10:21
    gurux.dlms.c 9.0.2512.0201
  • Mon, 12/01/2025 - 13:55
    Gurux.DLMS.Python 1.0.193
  • Thu, 11/13/2025 - 15:23
    Gurux.DLMS.Python 1.0.192
  • Thu, 11/13/2025 - 14:55
    gurux.dlms.java 4.0.84
  • Wed, 10/29/2025 - 08:51
    gurux.dlms.c 9.0.2510.2901

New forum topics

  • Incomplete Firmware Upgrade Process
  • SNRM byte mening
  • P384 Client Certificate incorrect issuer CN
  • Confirmed push service support
  • DLMS Stack hang during Firmware Upgrade
More
RSS feed
Privacy FAQ GXDN Issues Contact
Follow Gurux on Twitter Follow Gurux on Linkedin