# system.alarm.queryJournal parameters seem almost redundant?

**URL:** <https://forum.inductiveautomation.com/t/system-alarm-queryjournal-parameters-seem-almost-redundant/68435>\
**Category:** Ignition\
**Tags:** ignition81\
**Created:** [January 10, 2023, 4:09pm UTC](https://forum.inductiveautomation.com/t/system-alarm-queryjournal-parameters-seem-almost-redundant/68435 "2023-01-10T16:09:58Z")\
**Posts on this page:** 2\
**Page:** 1

<div class="post-metadata">

**Author:** ![cdunn.home](https://avatars.discourse-cdn.com/v4/letter/c/45deac/32.png) [@cdunn.home](https://forum.inductiveautomation.com/u/cdunn.home)\
**Post date:** [January 10, 2023, 4:09pm UTC](https://forum.inductiveautomation.com/t/system-alarm-queryjournal-parameters-seem-almost-redundant/68435/1 "2023-01-10T16:09:58Z")

</div>

Two of the optional parameters for queryJournal seem to be almost redundant.

```auto
system.alarm.queryJournal([startDate], [endDate], [journalName], [priority], [state], [path], [source], [displaypath], [all_properties], [any_properties], [defined], [includeData], [includeSystem], [isSystem])

Parameters
.....
Boolean includeSystem - Specifies whether system events are included in the return. [optional]
Boolean isSystem - Specifies whether the returned event must or must not be a system event. [optional]

```

What are the differences between these options? What are their defaults?

Since the default behavior isn't listed in the function reference, could these two work against each other if one or both are left default?

---

<div class="post-metadata">

**Author:** ![paul-griffith](https://sea1.discourse-cdn.com/inductiveautomation/user_avatar/forum.inductiveautomation.com/paul-griffith/32/37249_2.png) [@paul-griffith](https://forum.inductiveautomation.com/u/paul-griffith)\
**Post date:** [January 10, 2023, 4:54pm UTC](https://forum.inductiveautomation.com/t/system-alarm-queryjournal-parameters-seem-almost-redundant/68435/2 "2023-01-10T16:54:03Z")

</div>

Both arguments default to null/not set.  
If `includeSystem` is explicitly _false_, then system events are guaranteed to not be included in the results.  
If `isSystem` is explicitly _true_, then _only_ system events will be returned.

So by default, you will get system events included with your other events. If you set `includeSystem` false, you will _not_ get those system events. If you set `isSystem` true, then you will _only_ get those events.

An argument could certainly be made that this could probably just be _one_ parameter, and I think I would agree with that, but this is the way it's been for, more or less, the last decade, according to our VCS.
