# Using system.tag.browse with relative path

**URL:** <https://forum.inductiveautomation.com/t/using-system-tag-browse-with-relative-path/47194>\
**Category:** Ignition\
**Tags:** ignition81\
**Created:** [May 27, 2021, 3:10pm UTC](https://forum.inductiveautomation.com/t/using-system-tag-browse-with-relative-path/47194 "2021-05-27T15:10:17Z")\
**Posts on this page:** 1\
**Showing post:** 4

<div class="post-metadata">

**Author:** ![lrose](https://sea1.discourse-cdn.com/inductiveautomation/user_avatar/forum.inductiveautomation.com/lrose/32/62724_2.png) [@lrose](https://forum.inductiveautomation.com/u/lrose)\
**Post date:** [May 27, 2021, 5:41pm UTC](https://forum.inductiveautomation.com/t/using-system-tag-browse-with-relative-path/47194/4 "2021-05-27T17:41:09Z")

</div>

> [@patrick.maltais](#):
>
> The script in this event parses the structure and generates a json string with the key being the tag name. That json is passed to a database stored procedure. So if the structure is changed in the PLC, the json adapts automatically

Generally, since you are storing this in a DB, I would tend to recommend a Gateway Timer Event. The event would then check the PLC's copy of the structure against the DB copy and then choose to record a change or not.

You could also achieve this with a Gateway Tag Change Event on a Trigger Tag, then the device could be responsible for triggering the database operation.

> [@patrick.maltais](#):
>
> What do you suggest to replace the Event Script with something more secure?

It's less about security and more about execution time. Tag event scripts run in a limited thread pool, so best practice is to not execute potentially long running tasks there. Doing so can lead to missed events.

Here is a discussion on the topic.

> [@Tag Change Missed Events](http://forum.inductiveautomation.com/t/tag-change-missed-events/37764/2):
>
> Each tag has a queue, size 5, that change events get put into and pulled out of for execution. If your script is taking too long to execute and changes are happening quickly this queue will overflow and that flag will get set. When an overflow happens the oldest event (the head of the queue) is discarded to make room.

---

_[View the full topic](https://forum.inductiveautomation.com/t/using-system-tag-browse-with-relative-path/47194)._
