I'm writing an Adapter for integrating notifications from an in-house application and have some questions.
Our custom application generates log messages that have hostnames (and sometimes FQDNs) instead of IP addresses.  When I call updateLogMessage(), it expects a Device "Identification," which seems to be an IP address rather than a hostname.  The message volume is quite high, so I don't really want to be doing host lookups every time I receive a logging message.
I had considered using the initialize() method in my Adapter to retrieve the contents of the Device table and set up a map from IP addresses to hostnames, which will make the process much more efficient.  However, someone else has written a set of scripts to update the Device table from application configs every day, so the Device table changes frequently.
How often is initialize() called?  Are Adapter instances frequently created and destroyed as message volume from the feeders increases and decreases?  Is there a better solution to my problem?
As a side matter, I had wondered if new Adapter instances were created in separate threads from a thread pool to meet changing volume as well.  I thought I saw something about a thread pool in the source, but I'm new to Java and GroundWork and therefore not certain about how everything works.