Custom Logging
One of the most helpful parts of Iguana is the logging system. It's super easy to build intuitive logging for your own components using it. Here are a few pointers:
iguana.log* gives us calls to the logging system
So this is an example of a log message:
iguana.logInfo("#custom #me This is a custom log")
You can use #hashtags in your log messages
This makes it a little easier to view the logs and filter on the tags by clicking on them:
See the #custom. If you were to click on it, this is what you would see:
Cool eh? Very nice way of filtering your log data. Switching on Matches only:
You can trigger custom Iguana X notifications
In the Translator, you can use iguana.log to provide a hook for implementing custom notification logic. For example, if you write this helper function:
function Alert(Message)
iguana.log("ALERT: "..Message)
end
Then create a Log Contains Notifications rule using the key word “ALERT:“ to trigger a notification anytime there is a match in the component's logs.
You can relate messages together using message id that is returned from queue.push{data=Message}
This is how you do it:
local MessageId = queue.push{data="A message"}
iguana.logInfo("This is associated with that message.", MessageId)
Now this custom informational log you just created, will be related in the logs to the message queued.
That's it! Simple and powerful.