DriverInterfaceError: Point not configured on device: Heartbeat
DriverInterfaceError: Point not configured on device: Heartbeat
在我的边缘设备日志文件中,我注意到有一个错误,我认为它与我为 platform.driver 代理修改 restful driver 的方式有关。我这样做是因为我的休息 API 调用需要通过一个调用来解析大量数据,而我认为这个驱动程序的编写方式是使用 BASE URL 然后驱动程序配置文件只添加了“指向 BASE URL 以请求数据。 (希望这是有道理的)
这个心跳错误可能是我修改 restful 驱动程序的方式造成的吗?
2022-06-01 17:10:44,992 (platform_driveragent-4.0 2731042) volttron.platform.vip.agent.subsystems.rpc ERROR: unhandled exception in JSON-RPC method 'heart_beat':
Traceback (most recent call last):
File "/home/geb/.volttron/agents/db5dc5bf-e75f-4ef3-a672-235f23c3f124/platform_driveragent-4.0/platform_driver/interfaces/__init__.py", line 296, in get_register_by_name
return self.point_map[name]
KeyError: 'Heartbeat'
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "/home/geb/volttron/volttron/platform/vip/agent/subsystems/rpc.py", line 181, in method
return method(*args, **kwargs)
File "/home/geb/.volttron/agents/db5dc5bf-e75f-4ef3-a672-235f23c3f124/platform_driveragent-4.0/platform_driver/agent.py", line 504, in heart_beat
device.heart_beat()
File "/home/geb/.volttron/agents/db5dc5bf-e75f-4ef3-a672-235f23c3f124/platform_driveragent-4.0/platform_driver/driver.py", line 327, in heart_beat
self.set_point(self.heart_beat_point, self.heart_beat_value)
File "/home/geb/.volttron/agents/db5dc5bf-e75f-4ef3-a672-235f23c3f124/platform_driveragent-4.0/platform_driver/driver.py", line 344, in set_point
return self.interface.set_point(point_name, value, **kwargs)
File "/home/geb/.volttron/agents/db5dc5bf-e75f-4ef3-a672-235f23c3f124/platform_driveragent-4.0/platform_driver/interfaces/__init__.py", line 599, in set_point
result = self._set_point(point_name, value)
File "/home/geb/.volttron/agents/db5dc5bf-e75f-4ef3-a672-235f23c3f124/platform_driveragent-4.0/platform_driver/interfaces/restful.py", line 78, in _set_point
register = self.get_register_by_name(point_name)
File "/home/geb/.volttron/agents/db5dc5bf-e75f-4ef3-a672-235f23c3f124/platform_driveragent-4.0/platform_driver/interfaces/__init__.py", line 298, in get_register_by_name
raise DriverInterfaceError("Point not configured on device: "+name)
platform_driver.interfaces.DriverInterfaceError: Point not configured on device: Heartbeat
@bbartling。请确保与您的 restful 驱动程序关联的注册表 csv 文件具有 'heartbeat' 点。另外,请确保在 restful 驱动程序配置中配置了 'heart_beat_point'。来自 Volttron Driver Framework docs:
heart_beat_point - A Point which to toggle to indicate a heartbeat to the device. A point with this Volttron Point Name must exist in the registry. If this setting is missing the driver will not send a heart beat signal to the device. Heart beats are triggered by the Actuator Agent which must be running to use this feature.
在我的边缘设备日志文件中,我注意到有一个错误,我认为它与我为 platform.driver 代理修改 restful driver 的方式有关。我这样做是因为我的休息 API 调用需要通过一个调用来解析大量数据,而我认为这个驱动程序的编写方式是使用 BASE URL 然后驱动程序配置文件只添加了“指向 BASE URL 以请求数据。 (希望这是有道理的)
这个心跳错误可能是我修改 restful 驱动程序的方式造成的吗?
2022-06-01 17:10:44,992 (platform_driveragent-4.0 2731042) volttron.platform.vip.agent.subsystems.rpc ERROR: unhandled exception in JSON-RPC method 'heart_beat':
Traceback (most recent call last):
File "/home/geb/.volttron/agents/db5dc5bf-e75f-4ef3-a672-235f23c3f124/platform_driveragent-4.0/platform_driver/interfaces/__init__.py", line 296, in get_register_by_name
return self.point_map[name]
KeyError: 'Heartbeat'
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "/home/geb/volttron/volttron/platform/vip/agent/subsystems/rpc.py", line 181, in method
return method(*args, **kwargs)
File "/home/geb/.volttron/agents/db5dc5bf-e75f-4ef3-a672-235f23c3f124/platform_driveragent-4.0/platform_driver/agent.py", line 504, in heart_beat
device.heart_beat()
File "/home/geb/.volttron/agents/db5dc5bf-e75f-4ef3-a672-235f23c3f124/platform_driveragent-4.0/platform_driver/driver.py", line 327, in heart_beat
self.set_point(self.heart_beat_point, self.heart_beat_value)
File "/home/geb/.volttron/agents/db5dc5bf-e75f-4ef3-a672-235f23c3f124/platform_driveragent-4.0/platform_driver/driver.py", line 344, in set_point
return self.interface.set_point(point_name, value, **kwargs)
File "/home/geb/.volttron/agents/db5dc5bf-e75f-4ef3-a672-235f23c3f124/platform_driveragent-4.0/platform_driver/interfaces/__init__.py", line 599, in set_point
result = self._set_point(point_name, value)
File "/home/geb/.volttron/agents/db5dc5bf-e75f-4ef3-a672-235f23c3f124/platform_driveragent-4.0/platform_driver/interfaces/restful.py", line 78, in _set_point
register = self.get_register_by_name(point_name)
File "/home/geb/.volttron/agents/db5dc5bf-e75f-4ef3-a672-235f23c3f124/platform_driveragent-4.0/platform_driver/interfaces/__init__.py", line 298, in get_register_by_name
raise DriverInterfaceError("Point not configured on device: "+name)
platform_driver.interfaces.DriverInterfaceError: Point not configured on device: Heartbeat
@bbartling。请确保与您的 restful 驱动程序关联的注册表 csv 文件具有 'heartbeat' 点。另外,请确保在 restful 驱动程序配置中配置了 'heart_beat_point'。来自 Volttron Driver Framework docs:
heart_beat_point - A Point which to toggle to indicate a heartbeat to the device. A point with this Volttron Point Name must exist in the registry. If this setting is missing the driver will not send a heart beat signal to the device. Heart beats are triggered by the Actuator Agent which must be running to use this feature.