CurrentTimeSeconds updates once per second and is supposed to fire a value changed script by writing its value to another tag my tag provider (New Tag).
I'm sure I am missing something simple here but can't figure it out. The picture above shows the value changed script and the two (2) tags on the bottom left.
Any help identifying what I am doing wrong is appreciated.
After you restart a tag, if there is a problem in a script, you should get a single error logged on that gateway. (And it typically says that further errors will be logged at DEBUG level.)
If the gateway has a gateway scripting project defined, consider moving the code to a library script. There, it is easier to wrap all of the logic in a dual-clause try-except-except for you to log.
You could also log a constant string just before the writeBlocking() to see if that comes through.
My more modern advice, based on more knowledge, is that tag event scripts (on the tag) should run in single digits milliseconds, no exceptions. That means you cannot use any system.* functions that would wait on a database or wait on any network exchange. And never sleep or busy-wait. You cannot use system.tag.writeBlocking() on anything but memory tags. You cannot interact with the DB except via system.db.runSFPrepUpdate(). You cannot use system.opc.* at all. You cannot call out to any web API.
Tag Change Events defined in a project get their own thread, so can do more "bad" things.