diff options
Diffstat (limited to 'tools')
-rw-r--r-- | tools/phosphor-logging/templates/elog-lookup-template.mako.cpp | 20 |
1 files changed, 13 insertions, 7 deletions
diff --git a/tools/phosphor-logging/templates/elog-lookup-template.mako.cpp b/tools/phosphor-logging/templates/elog-lookup-template.mako.cpp index e29b7a9..2e5c785 100644 --- a/tools/phosphor-logging/templates/elog-lookup-template.mako.cpp +++ b/tools/phosphor-logging/templates/elog-lookup-template.mako.cpp @@ -16,24 +16,30 @@ namespace logging const std::map<std::string,std::vector<std::string>> g_errMetaMap = { % for name in errors: <% + meta_string = "" meta_list = [] - if(name in meta): + if(name in meta and meta[name]): meta_list = meta[name] - meta_string = '\",\"'.join(meta_list) + meta_string = '\",\"'.join(meta_list) parent = parents[name] while parent: - tmpparent = parent.split('.') - ## Name is the last item - parent_name = tmpparent[-1] - parent_meta_short = '\",\"'.join(meta[parent]) - meta_string = meta_string + "\",\"" + parent_meta_short + if (parent in meta and meta[parent]): + parent_meta_short = '\",\"'.join(meta[parent]) + if (meta_string): + meta_string = meta_string + "\",\"" + parent_meta_short + else: + meta_string = parent_meta_short parent = parents[parent] if ("example.xyz.openbmc_project" not in name): index = name.rfind('.') name = name[:index] + ".Error" + name[index:] %>\ + %if (meta_string): {"${name}",{"${meta_string}"}}, + %else: + {"${name}",{}}, + %endif % endfor }; |