我在CSR中定义了
"Endpoint_1": {
"TargetEid": 9,
"TargetPhyAddr": 29,
"MessageType": 4,
"MediumType": 2,
"RefChip": "#/Chip_Mctp"
}
对应mctpd的model.json中的
"Endpoint": {
"path": "/bmc/kepler/Systems/:SystemId/Mctp/Endpoint/:Id/:MsgType",
"privilege": [
"ConfigureSelf"
],
"interfaces": {
"bmc.kepler.Systems.Mctp.PCIeEndpoint": {
"properties": {
"ServiceName": {},
"TargetEid": {
"usage": [
"CSR"
]
},
"TargetPhyAddr": {
"usage": [
"CSR"
]
},
"MessageType": {
"usage": [
"CSR"
]
},
"MediumType": {
"usage": [
"CSR"
]
},
"Status": {}
}
},
但是加载却失败了,从日志来看似乎是因为path[/bmc/kepler/Systems/1/Mctp/Endpoint/Endpoint_1_010101/${MsgType}]中最后一个变量MsgType获取不到值导致的
1970-01-01 03:44:24.475859 mctpd INFO: object_manage.lua(248): start to AddObject Endpoint_1_010101, owner:mctpd, path:/bmc/kepler/ObjectGroup/010101, position:010101, life_cycle_id:1, class_name:Endpoint
1970-01-01 03:44:24.522118 mctpd DEBUG: object.lua(83): set property traceback: sender[bmc.kepler.mctpd], path[/bmc/kepler/Systems/1/Mctp/Endpoint/Endpoint_1_010101/${MsgType}], interface[bmc.kepler.Systems.Mctp.PCIeEndpoint], name[Status], value[nil]->[0], traceback[stack traceback: ./opt/bmc/libmc/lualib/traceback/object.lua:49: in function <./opt/bmc/libmc/lualib/traceback/object.lua:45> [C]: in function 'pcall' ./opt/bmc/libmc/lualib/mc/logging.lua:109: in function 'format_msg' ./opt/bmc/libmc/lualib/mc/logging.lua:253: in function 'LOG_MSG' ./opt/bmc/libmc/lualib/mc/logging.lua:459: in function 'log_easy' ./opt/bmc/libmc/lualib/mc/logging.lua:463: in function 'debug_easy' ./opt/bmc/libmc/lualib/traceback/object.lua:83: in function 'before_set_value' ./opt/bmc/libmc/lualib/traceback/object.lua:88: in function '__newindex' ./opt/bmc/libmc/lualib/mc/mdb/init.lua:657: in function 'new_object' ./opt/bmc/libmc/lualib/mc/mdb/init.lua:671: in function 'do_create_mdb_objects' .../libmc/lualib/mc/class_mgnt/api/object/mdb_mgmt/init.lua:192: in function 'create_mdb_objects' ...c/lualib/mc/class_mgnt/api/object/property_mgmt/init.lua:467: in function 'parse_sr_extra_params' ./opt/bmc/libmc/lualib/mc/mdb/object_manage.lua:119: in function <./opt/bmc/libmc/lualib/mc/mdb/object_manage.lua:112> [C]: in function 'pcall' ./opt/bmc/libmc/lualib/mc/mdb/object_manage.lua:251: in function <./opt/bmc/libmc/lualib/mc/mdb/object_manage.lua:244> [builtin#21]: at 0xffff9c4fb3c0 [C]: in function 'pcall' ./opt/bmc/libmc/lualib/mc/context.lua:205: in function 'with_context' ./opt/bmc/libmc/lualib/mc/app_preloader.lua:92: in function '' /opt/bmc/skynet/lualib/skynet.lua: in function </opt/bmc/skynet/lualib/skynet.lua:0>]
……
1970-01-01 03:44:25.663781 mctpd DEBUG: object.lua(83): set property traceback: sender[bmc.kepler.mctpd], path[/bmc/kepler/Systems/1/Mctp/Endpoint/Endpoint_1_010101/${MsgType}], interface[bmc.kepler.Systems.Mctp.PCIeEndpoint], name[TargetEid], value[0]->[9], traceback[stack traceback: ./opt/bmc/libmc/lualib/traceback/object.lua:49: in function <./opt/bmc/libmc/lualib/traceback/object.lua:45> [C]: in function 'pcall' ./opt/bmc/libmc/lualib/mc/logging.lua:109: in function 'format_msg' ./opt/bmc/libmc/lualib/mc/logging.lua:253: in function 'LOG_MSG' ./opt/bmc/libmc/lualib/mc/logging.lua:459: in function 'log_easy' ./opt/bmc/libmc/lualib/mc/logging.lua:463: in function 'debug_easy' ./opt/bmc/libmc/lualib/traceback/object.lua:83: in function 'before_set_value' ./opt/bmc/libmc/lualib/traceback/object.lua:88: in function '__newindex' ...c/lualib/mc/class_mgnt/api/object/property_mgmt/init.lua:344: in function 'force_set_prop' ...c/lualib/mc/class_mgnt/api/object/property_mgmt/init.lua:452: in function 'assign_sr_props' ./opt/bmc/libmc/lualib/mc/mdb/object_manage.lua:124: in function <./opt/bmc/libmc/lualib/mc/mdb/object_manage.lua:112> [C]: in function 'pcall' ./opt/bmc/libmc/lualib/mc/mdb/object_manage.lua:251: in function <./opt/bmc/libmc/lualib/mc/mdb/object_manage.lua:244> [builtin#21]: at 0xffff9c4fb3c0 [C]: in function 'pcall' ./opt/bmc/libmc/lualib/mc/context.lua:205: in function 'with_context' ./opt/bmc/libmc/lualib/mc/app_preloader.lua:92: in function '' /opt/bmc/skynet/lualib/skynet.lua: in function </opt/bmc/skynet/lualib/skynet.lua:0>]
1970-01-01 03:44:25.664881 mctpd DEBUG: init.lua(409): assign preset props failed, table not exists, class_name: Endpoint
1970-01-01 03:44:25.665760 mctpd DEBUG: init.lua(520): assign persistance props failed, database not exists, class_name: Endpoint
1970-01-01 03:44:25.722444 mctpd DEBUG: app_preloader.lua(58): co[thread: 0x7393c9e75640] exit
想问一下像这种资源协作接口中的变量是在哪定义的,以及怎么处理这种错误
