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:
|
||||
pid = lttng_models.get_field(event,
|
||||
'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,
|
||||
'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')
|
||||
procname = lttng_models.get_field(event, 'procname')
|
||||
metadata = lttng_models.EventMetadata(event_name, pid, tid, timestamp, procname)
|
||||
|
|
|
@ -1,8 +1,12 @@
|
|||
# Model objects for LTTng traces/events
|
||||
|
||||
|
||||
def get_field(event, field_name, default=None):
|
||||
return event.get(field_name, default)
|
||||
def get_field(event, field_name, default=None, raise_if_not_found=True):
|
||||
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):
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue