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!
Hi, Is there an option to enforce query timeout for any query against the stored events? I know there is a setting in user preferences, but that only affects SQL queries. I would also like regular text based searches and signals to time out. The problem I would like to solve is that some of the users start a long running query that has 0 results, so basically Seq has to go through all the stored events (which gets slow once they need to be read off the disk). Then the users forget to cancel the query so it runs until completion, which can take several minutes, using a lot of server's resources.
Posted by Marcin Budny 3 years ago
Is it possible to freetext search over object properties if they are not part of @Message? For example: `var myObject = new MyObject { Id = 909090, Name = "ux909090"}; Serilog.Log.ForContext("MyObject", myObject).Information("Hello World");` We could not find a way to search for the Id without using MyObject.Id =909090. When using a text query like “909090” is it only @Message that is evaluated? Why not @Document as well?
Posted by Nathan 3 years ago
Hi, I'm using Seq v. 4.1.17. I have following query on my dashboard (here, copied and pasted from the dashboard settings): select count(*) as col0 from stream group by name, time(1m) limit 10000 The charts are plotted correctly. There are several groups (having different "name" property). Some of the groups have a value of "col0" equal to zero all the time. However when I setup an alert with condition "col0 = 0", measurement window = 1min, suppression time = 0min, the alert is never triggered. According to documentation: "If the query on the chart is grouped, the condition will be evaluated against each individual group and the alert will trigger if any group matches the condition." The behavior I observed suggest that the condition is applied to the sum of the groups rather to individual ones. Is that a bug? Please advise.
Posted by Marcin Budny 3 years ago
Hi SEQ Team, This morning we had a problem. From log can be seen as below. {"@t":"2017-12-25T01:00:20.8747699Z","@mt":" Seq stopped cleanly"} {"@t":"2017-12-25T01:00:05.3491070Z","@mt":" Stopping {AppCount} running apps","AppCount":13} {"@t":"2017-12-25T01:00:05.0416443Z","@mt":" Stopping broadcast channel","SourceContext":"Flare.Events.Broadcast.BroadcastChannel"} {"@t":"2017-12-25T01:00:05.0416443Z","@mt":" Stopping {Tasks} scheduled tasks","Tasks":11,"SourceContext":"Seq.Server.Tasks.TaskRunner"} {"@t":"2017-12-25T01:00:03.7126398Z","@mt":" Signalling for {Workers} background worker(s) to complete","Workers":3,"SourceContext":"Flare.Workers.WorkerPool"} {"@t":"2017-12-25T01:00:03.7126398Z","@mt":" Stopping HTTP listener"} {"@t":"2017-12-25T00:58:39.3548640Z","@mt":" Memory is overutilized, so cooling down segment {Segment}","Segment":"12/23/2017 12:00:00","SourceContext":"Flare.Events.Cache.SegmentCache"} {"@t":"2017-12-25T00:58:30.5771826Z","@mt":" Memory is overutilized, so cooling down segment {Segment}","Segment":"12/23/2017 09:00:00","SourceContext":"Flare.Events.Cache.SegmentCache"} {"@t":"2017-12-25T00:58:21.4577578Z","@mt":" Memory is overutilized, so cooling down segment {Segment}","Segment":"12/23/2017 06:00:00","SourceContext":"Flare.Events.Cache.SegmentCache"} {"@t":"2017-12-25T00:58:12.0509496Z","@mt":" Memory is overutilized, so cooling down segment {Segment}","Segment":"12/23/2017 03:00:00","SourceContext":"Flare.Events.Cache.SegmentCache"} Then our PSScheduledJob that is checking if SEQ is in running state (seq status) discovered that is not in running state. At 1:30AM tried to start the SEQ (SEQ start). But: {"@t":"2017-12-25T01:30:13.5089970Z","@mt":" Uncaught exception from worker {WorkDescription} ({WorkId})","@l":"Error","@x":"Autofac.Core.DependencyResolutionException: An error occurred during the activation of a particular registration. See the inner exception for details. Registration: Activator = AppRunner (ReflectionActivator), Services = [Seq.Server.Features.Runner.IAppRunner, Flare.Diagnostics.Reporting.IDiagnosticReporter], Lifetime = Autofac.Core.Lifetime.RootScopeLifetime, Sharing = Shared, Ownership = OwnedByLifetimeScope ---> An error occurred during the activation of a particular registration. See the inner exception for details. Registration: Activator = QuinceDB (DelegateActivator), Services = [Quince.QuinceDB], Lifetime = Autofac.Core.Lifetime.RootScopeLifetime, Sharing = Shared, Ownership = OwnedByLifetimeScope ---> An error occurred during the activation of a particular registration. See the inner exception for details. Registration: Activator = StorageSubsystem (DelegateActivator), Services = [Seq.Server.Storage.StorageSubsystem], Lifetime = Autofac.Core.Lifetime.RootScopeLifetime, Sharing = Shared, Ownership = OwnedByLifetimeScope ---> Cannot access file, the file is locked or in use (See inner exception for details.) (See inner exception for details.) (See inner exception for details.) ---> Autofac.Core.DependencyResolutionException: An error occurred during the activation of a particular registration. See the inner exception for details. Registration: Activator = QuinceDB (DelegateActivator), Services = [Quince.QuinceDB], Lifetime = Autofac.Core.Lifetime.RootScopeLifetime, Sharing = Shared, Ownership = OwnedByLifetimeScope ---> An error occurred during the activation of a particular registration. See the inner exception for details. Registration: Activator = StorageSubsystem (DelegateActivator), Services = [Seq.Server.Storage.StorageSubsystem], Lifetime = Autofac.Core.Lifetime.RootScopeLifetime, Sharing = Shared, Ownership = OwnedByLifetimeScope ---> Cannot access file, the file is locked or in use (See inner exception for details.) (See inner exception for details.) ---> Autofac.Core.DependencyResolutionException: An error occurred during the activation of a particular registration. See the inner exception for details. Registration: Activator = StorageSubsystem (DelegateActivator), Services = [Seq.Server.Storage.StorageSubsystem], Lifetime = Autofac.Core.Lifetime.RootScopeLifetime, Sharing = Shared, Ownership = OwnedByLifetimeScope ---> Cannot access file, the file is locked or in use (See inner exception for details.) ---> Microsoft.Isam.Esent.Interop.EsentFileAccessDeniedException: Cannot access file, the file is locked or in use\r\n at Microsoft.Isam.Esent.Interop.Api.Check(Int32 err)\r\n at Flare.Storage.Esent.Data.EsentDBSession..ctor(Instance instance, String path, Action notifyDisposed)\r\n at Flare.Storage.Esent.Data.EsentDB.BeginSession(Action notifyDisposed, String tag)\r\n at Flare.Storage.Esent.Migration.EventStoreMigrator.GetAppliedMigrations(EsentDB db)\r\n at Flare.Storage.Esent.Migration.EventStoreMigrator.Migrate(EsentDB db)\r\n at Flare.Storage.Esent.EsentStorageExtent.BeginSession(String tag)\r\n at Flare.Storage.Esent.EsentStorageExtent.<Get>d__15.MoveNext()\r\n at Flare.Events.EventStore.<Get>d__12.MoveNext()\r\n at System.Linq.Enumerable.<TakeIterator>d__24`1.MoveNext()\r\n at Flare.Events.EventStore..ctor(IStorageEngine[] storageEngines, String extentsPath, WorkerPool workerPool, MemoryThresholds memoryThresholds, BroadcastChannel broadcast)\r\n at Seq.Server.SeqServerModule.InitStorageSubsystem(IComponentContext c)\r\n at Autofac.Builder.RegistrationBuilder.<>c__DisplayClass0_0`1.<ForDelegate>b__0(IComponentContext c, IEnumerable`1 p)\r\n at Autofac.Core.Activators.Delegate.DelegateActivator.ActivateInstance(IComponentContext context, IEnumerable`1 parameters)\r\n at Autofac.Core.Resolving.InstanceLookup.Activate(IEnumerable`1 parameters)\r\n --- End of inner exception stack trace ---\r\n at Autofac.Core.Resolving.InstanceLookup.Activate(IEnumerable`1 parameters)\r\n at Autofac.Core.Lifetime.LifetimeScope.GetOrCreateAndShare(Guid id, Func`1 creator)\r\n at Autofac.Core.Resolving.InstanceLookup.Execute()\r\n at Autofac.Core.Resolving.ResolveOperation.GetOrCreateInstance(ISharingLifetimeScope currentOperationScope, IComponentRegistration registration, IEnumerable`1 parameters)\r\n at Autofac.ResolutionExtensions.TryResolveService(IComponentContext context, Service service, IEnumerable`1 parameters, Object& instance)\r\n at Autofac.ResolutionExtensions.ResolveService(IComponentContext context, Service service, IEnumerable`1 parameters)\r\n at Autofac.ResolutionExtensions.Resolve[TService](IComponentContext context, IEnumerable`1 parameters)\r\n at Seq.Server.SeqServerModule.<>c.<Load>b__16_7(IComponentContext c)\r\n at Autofac.Builder.RegistrationBuilder.<>c__DisplayClass0_0`1.<ForDelegate>b__0(IComponentContext c, IEnumerable`1 p)\r\n at Autofac.Core.Activators.Delegate.DelegateActivator.ActivateInstance(IComponentContext context, IEnumerable`1 parameters)\r\n at Autofac.Core.Resolving.InstanceLookup.Activate(IEnumerable`1 parameters)\r\n --- End of inner exception stack trace ---\r\n at Autofac.Core.Resolving.InstanceLookup.Activate(IEnumerable`1 parameters)\r\n at Autofac.Core.Lifetime.LifetimeScope.GetOrCreateAndShare(Guid id, Func`1 creator)\r\n at Autofac.Core.Resolving.InstanceLookup.Execute()\r\n at Autofac.Core.Resolving.ResolveOperation.GetOrCreateInstance(ISharingLifetimeScope currentOperationScope, IComponentRegistration registration, IEnumerable`1 parameters)\r\n at Autofac.Core.Activators.Reflection.ConstructorParameterBinding.Instantiate()\r\n at Autofac.Core.Activators.Reflection.ReflectionActivator.ActivateInstance(IComponentContext context, IEnumerable`1 parameters)\r\n at Autofac.Core.Resolving.InstanceLookup.Activate(IEnumerable`1 parameters)\r\n --- End of inner exception stack trace ---\r\n at Autofac.Core.Resolving.InstanceLookup.Activate(IEnumerable`1 parameters)\r\n at Autofac.Core.Lifetime.LifetimeScope.GetOrCreateAndShare(Guid id, Func`1 creator)\r\n at Autofac.Core.Resolving.InstanceLookup.Execute()\r\n at Autofac.Core.Resolving.ResolveOperation.GetOrCreateInstance(ISharingLifetimeScope currentOperationScope, IComponentRegistration registration, IEnumerable`1 parameters)\r\n at Autofac.Core.Resolving.ResolveOperation.Execute(IComponentRegistration registration, IEnumerable`1 parameters)\r\n at Autofac.Features.LazyDependencies.LazyRegistrationSource.<>c__DisplayClass5_0`1.<CreateLazyRegistration>b__1()\r\n at System.Lazy`1.CreateValue()\r\n at System.Lazy`1.LazyInitValue()\r\n at Seq.Server.ServiceProcess.ServerService.<Start>b__9_0(CancellationToken cancel)\r\n at Flare.Workers.WorkerPool.<>c__DisplayClass4_0.<Run>b__0()","WorkDescription":"Start background processes","WorkId":"908e9827-90dd-446b-b9ef-cd5d09fd2b79","SourceContext":"Flare.Workers.WorkerPool"} {"@t":"2017-12-25T01:30:03.3546165Z","@mt":" Available storage engines in order of preference are {Engines}","Engines":["ESENT","LMDB"],"SourceContext":"Flare.Events.EventStore"} {"@t":"2017-12-25T01:30:03.3546165Z","@mt":" Opening event store at {ExtentsPath}","ExtentsPath":"F:\\SEQ\\Extents","SourceContext":"Flare.Events.EventStore"} {"@t":"2017-12-25T01:30:03.3233496Z","@mt":" ESENT sparse file support is available on this system"} {"@t":"2017-12-25T01:30:03.0889876Z","@mt":" Opening document store {DatabasePath}","DatabasePath":"F:\\SEQ\\Documents\\default.quince","InstanceName":"Quince","SourceContext":"Quince.QuinceDB"} {"@t":"2017-12-25T01:30:03.0577566Z","@mt":" Seq listening on {ListenUris}","ListenUris":["https://seq.somename.com:5341/"]} {"@t":"2017-12-25T01:30:02.4483350Z","@mt":" Seq {SeqVersion} {ProcessWordSize}-bit running on .NET {DotNetVersion} and OS {OSCaption} ({OSVersion}) {OSWordSize}-bit","SeqVersion":"4.1.17","ProcessWordSize":64,"DotNetVersion":"4.0.30319.42000","OSCaption":"Microsoft Windows Server 2012 R2 Datacenter","OSVersion":"6.3.9600","OSWordSize":64,"SourceContext":"Seq.Server.Features.Diagnostics.EnvironmentInformationWriter"} Then during working hours when manually checking SEQ status surprisingly: The Seq service is installed and running. SEQ.exe process allocated only 20 MB of RAM when normally 21GB. Trying to reach SEQ endpoint then request returned: Error Seq in unavailable. Failed to initialize storage: Cannot access file, the file is locked or in use. The whole problem showed up when no additional workload or maintenance has been performed. The problem has been solved by manual Stop-Process SEQ -Force then SEQ start. Looking forward to a suggestion.
Posted by Igor 3 years ago
Hi, I have a python project, which uses log and configures it with help of logging.conf file. I want to add seq log as additional handler. When I use sample from documentation I don't see messages in Seq browser. Same seq sample, tested on python test (without config file, without other handlers) works. Please, could you add sample to documentation or explain me what a problem in my code? logging.config.fileConfig('logging.conf') self.logger = logging.getLogger("root") seqlog.log_to_seq( server_url="http://", api_key="", level=logging.INFO, batch_size=1, auto_flush_timeout=10000, # milliseconds override_root_logger=True ) thank you, Igor.
Posted by Igor Ziselman 3 years ago
We have 5 services running on the same machine using the same API key. Sometimes, after a deploy of one of them, the message don't arrive anymore of that one deployed service. To fix this, we have ot go to the settings, click deselect 'Require an API key', save changes, and reselect it and save changes. The Seq runs on another server.
Posted by Jan Kinable 3 years ago
Just wanted to let you know. Getting this error in the new version: {"@t":"2017-12-06T13:52:11.3298151Z","@mt":"Error serving {RequestUrl} (token: {ErrorToken})","@l":"Error","@x":"System.IO.FileNotFoundException: Could not load file or assembly 'Seq.Api, Version=4.2.244.0, Culture=neutral, PublicKeyToken=null' or one of its dependencies. The system cannot find the file specified.\r\nFile name: 'Seq.Api, Version=4.2.244.0, Culture=neutral, PublicKeyToken=null'\r\n at Seq.Server.Web.Api.RootModule.GetRootEntity()\r\n at Nancy.Routing.Route.<>c__DisplayClass4.<Wrap>b__3(Object parameters, CancellationToken context)\r\n\r\nWRN: Assembly binding logging is turned OFF.\r\nTo enable assembly bind failure logging, set the registry value [HKLM\\Software\\Microsoft\\Fusion!EnableLog] (DWORD) to 1.\r\nNote: There is some performance penalty associated with assembly bind failure logging.\r\nTo turn this feature off, remove the registry value [HKLM\\Software\\Microsoft\\Fusion!EnableLog].\r\n","RequestUrl":"http://localhost:5341/api","ErrorToken":"90a96918439248679e921042db308344","RequestId":"e1ef0f5e-7896-4200-9083-a23644b4bf73"}
Posted by Erling Brandvik 3 years ago
Nick, As an administrator for an enterprise SEQ installation, I am one of a few API key creators. I find myself being a bottleneck for the process and have created a utility to help me quickly create dozens of keys. I would like to see a feature where users can self provision a key (like an API Gateway product does for consumers). Or allow for a power user role that can provision new keys but cannot change system settings.
Posted by PJ Khatri 3 years ago
Is there a way to plot a JSON array that is embedded in a log line in Seq? For example, an array of temperatures is output on a line in the log. temperatures [0, 0.25, 0.5, 0.75, 1, 1.25, 1.5, 1.75, 2, 2.25, 2.5, 2.75, 3, 3.25, 3.5, 3.75, 4, 4.25, 4.5, 4.75, 5, 5.25, 5.5, 5.75, 6, 6.25, 6.5, 6.75, 7, 7.25, 7.5, 7.75, 8, 8.25, 8.5, 8.75, 9, 9.25, 9.5, 9.75, 10, 10.25, 10.5, 10.75, 11, 11.25, 11.5, 11.75, 12, 12.25, 12.5, 12.75, 13, 13.25, 13.5, 13.75, 14, 14.25, 14.5, 14.75, 15, 15.25, 15.5, 15.75, 16, 16.25, 16.5, 16.75, 17, 17.25, 17.5, 17.75, 18, 18.25, 18.5, 18.75, 19, 19.25, 19.5, 19.75, 20, 20.25, 20.5, 20.75, 21, 21.25, 21.5, 21.75, 22, 22.25, 22.5, 22.75, 23, 23.25, 23.5, 23.75, 24, 24.25, 24.5, 24.75, 25, 25.25, 25.5, 25.75, 26, 26.25, 26.5, 26.75, 27, 27.25, 27.5, 27.75, 28, 28.25, 28.5, 28.75, 29, 29.25, 29.5, 29.75, 30, 30.25, 30.5, 30.75, 31, 31.25, 31.5, 31.75, 32, 32.25, 32.5, 32.75, 33, 33.25, 33.5, 33.75, 34, 34.25, 34.5, 34.75, 35, 35.25, 35.5, 35.75, 36, 36.25, 36.5, 36.75, 37, 37.25, 37.5, 37.75, 38, 38.25, 38.5, 38.75, 39, 39.25, 39.5, 39.75, 40, 40.25, 40.5, 40.75, 41, 41.25, 41.5, 41.75, 42, 42.25, 42.5, 42.75, 43, 43.25, 43.5, 43.75, 44, 44.25, 44.5, 44.75]
Posted by Tom 3 years ago
I'm trying to optimize my messages to allow our seq server to keep more data in RAM. I'd like to understand, if I send 1 million messages like "this is some log of {foo}", does seq keep the entire event including the text in RAM, or does it store only the template once and keep the id and the variable contents 1 million times? In other words, in order to allow more messages to be kept in RAM, should I worry about the size of the template, or only the amount of data in the variables sent along with them?
Posted by Natan Vivo 3 years ago
Hi, I test Seq for product (.NET) and add it (via nlog). And now, profiler dotTrace shows that nlog-seq takes ~ 67% from all times for our standard flow. Could you, please, suggest correct pattern to use nlog-seq, which will not reduce performance? nlog configuration: <target name="seq" xsi:type="Seq" serverUrl="http://<address>:<port>" /> <logger name="*" minlevel="Trace" writeTo="seq" /> thank you, Igor.
Posted by Igor Mark Ziselman 3 years ago