Add option for raising exception if event field not found
This commit is contained in:
parent
946f0621cc
commit
08ec9c30b2
2 changed files with 12 additions and 4 deletions
|
@ -31,10 +31,14 @@ class EventHandler():
|
||||||
if handler_function is not None:
|
if handler_function is not None:
|
||||||
pid = lttng_models.get_field(event,
|
pid = lttng_models.get_field(event,
|
||||||
'vpid',
|
'vpid',
|
||||||
default=lttng_models.get_field(event, 'pid'))
|
default=lttng_models.get_field(event,
|
||||||
|
'pid',
|
||||||
|
raise_if_not_found=False))
|
||||||
tid = lttng_models.get_field(event,
|
tid = lttng_models.get_field(event,
|
||||||
'vtid',
|
'vtid',
|
||||||
default=lttng_models.get_field(event, 'tid'))
|
default=lttng_models.get_field(event,
|
||||||
|
'tid',
|
||||||
|
raise_if_not_found=False))
|
||||||
timestamp = lttng_models.get_field(event, '_timestamp')
|
timestamp = lttng_models.get_field(event, '_timestamp')
|
||||||
procname = lttng_models.get_field(event, 'procname')
|
procname = lttng_models.get_field(event, 'procname')
|
||||||
metadata = lttng_models.EventMetadata(event_name, pid, tid, timestamp, procname)
|
metadata = lttng_models.EventMetadata(event_name, pid, tid, timestamp, procname)
|
||||||
|
|
|
@ -1,8 +1,12 @@
|
||||||
# Model objects for LTTng traces/events
|
# Model objects for LTTng traces/events
|
||||||
|
|
||||||
|
|
||||||
def get_field(event, field_name, default=None):
|
def get_field(event, field_name, default=None, raise_if_not_found=True):
|
||||||
return event.get(field_name, default)
|
field_value = event.get(field_name, default)
|
||||||
|
# If enabled, raise exception as soon as possible to avoid headaches
|
||||||
|
if raise_if_not_found and field_value is None:
|
||||||
|
raise AttributeError(f'event field "{field_name}" not found!')
|
||||||
|
return field_value
|
||||||
|
|
||||||
|
|
||||||
def get_name(event):
|
def get_name(event):
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue