Seq Documentation and Support

Seq Documentation and Support

Welcome to the Seq documentation hub. You'll find comprehensive guides and documentation to help you start working with Seq as quickly as possible, as well as support if you get stuck. Let's jump right in!

Get Started    
Ask A Question

Questions

1

Extreme(?) load and EsentVersionStoreOutOfMemoryException

We have a seq server that is under pretty heavy load (60+million events/day). We are seeing peaks of 70+ thousand events/minute. This system will work fine for a few minutes, and then essentially stop responding for several minutes, and then work fine again - I think this has to do with the #events/minute, but I have not found proof of that yet. What I have found is these events in the ingestion log immediately after a period of lag. 2018-02-27 14:56:13 Exception raised when writing to event storage Microsoft.Isam.Esent.Interop.EsentVersionStoreOutOfMemoryException: Version store out of memory (cleanup already attempted) at Microsoft.Isam.Esent.Interop.Api.Check(Int32 err) at Microsoft.Isam.Esent.Interop.Api.JetGetTableColumnInfo(JET_SESID sesid, JET_TABLEID tableid, String columnName, JET_COLUMNLIST& columnlist) at Microsoft.Isam.Esent.Interop.Api.GetColumnDictionary(JET_SESID sesid, JET_TABLEID tableid) at Flare.Storage.Esent.Data.EsentDBSession.OpenTable(String tableName, Table& table, IDictionary`2& columns) at Flare.Storage.Esent.Data.EventsTable..ctor(EsentDBSession session) at Flare.Storage.Esent.EsentStorageExtent.Add(StructuredEvent[] events, Boolean lazyFlush) at Flare.Events.EventStore.Add(StorageEventCreationData[] eventsCreationData, Boolean lazyFlush) at Flare.Queries.DataStore.Add(StorageEventCreationData[] eventsCreationData, Boolean lazyFlush) at Seq.Server.Web.Api.RawEventsModule.Ingest() Additionally, though I don't have a capture of it, we have seen these events as well; EsentOutOfCursorsException

Posted by Gary McNickle about a month ago

2

Performance considerations in a project with a very high event volume per day

Hello, we want to use Seq in a project with a very high event volume per day. There will be (on average) ~1.7 million events per day and an estimated ~0.3KB of data (JSON) per event. The events should be accessible for at least 30 days and archived > 90 days (there is currently no time limit defined). It's an existing .NET project of a customer in the logistics sector with 10+ desktop applications for which we want to replace the text-file logging, so we have it easier to search and analyze the logs. All logs are currently written on a windows network-share. We are already using Serilog for the logfiles, with Log4Net as sink (because Log4Net has been the original logging technology). We are also considering a 2nd instance of Seq server for long-time archiving (event forwarding). If that's not a recommended approach in this case, we would like to export the events for long-time storage (Seq.App.FileArchiveJson). It is very possible that we can reduce the amount of events per day in the future, but for now Seq server would have to handle the amount of events stated above. What i would like to have now, are a few pointers regarding Seq performance in such a scenario. Is it even possible/recommended? What hardware-recommendations could be given (the Seq server would be running in a VM)? And any other advice regarding Seq server performance in such a scenario. Kind Regards, Sven Moelter

Posted by Sven Moelter 2 months ago