Well, since you’ve written your own real-time SQLTags driver, I guess the only real answer is to write your own SQLTags History driver as well
But really, that’s what comes to mind. Here’s why: SQLTags historian doesn’t really record “events”, it records value changes, along with a scan class execution record in order to tell when the scan class was executing properly and the data was simply not changing. If you wanted to insert your own event into the history table, you’d need to also insert a record into the scan class table in order for the system to tell that the data was good. Once you’ve done that, you’ve basically written your own driver.
I guess I should go about putting together a whitepaper for that as well. In the meantime, I think you can figure it out pretty well looking at the sqlth_* tables.
(PS, the white paper won’t be along for a few weeks, I’m on vacation … but I’m happy to try and answer questions here).