Commit Graph

40 Commits

Author SHA1 Message Date
Markus Johansson
bafd058aa8 #8280 Using IOHelper for Log files 2020-07-22 19:57:14 +02:00
Nathan Woulfe
02c1e88da2 V8: Display current log level in log viewer sidebar (#6059) 2019-08-13 22:07:05 +02:00
Bjarke Berg
811aea7898 Added missing files 2019-06-18 10:27:56 +02:00
Bjarke Berg
d52f6b5810 Added support for changing the dates of the log files 2019-05-03 14:56:44 +02:00
Warren Buckley
67fdf75da8 Fix typo 2019-03-05 11:12:04 +00:00
Warren Buckley
27cc433b96 We will ignore malformed log lines in the JSON log file - so the rest of the logviewer continues to work 2019-03-05 10:35:51 +00:00
Stephan
7660e9fb25 Reorganize composition code 2019-02-14 09:15:47 +01:00
Warren Buckley
4a5eca3c6a Adds in Composition Extension Methods to allow Setting the LogViewer without having to know the composition.RegisterUnique syntax 2019-01-28 15:39:49 +00:00
Warren Buckley
626b9e8f7b Remove a TODO comment that was hanging around 2019-01-22 10:07:56 +00:00
Bjarke Berg
70315d4a5f Make as must of the log viewer internal as possible 2019-01-22 10:36:44 +01:00
Bjarke Berg
025d0eae18 Logviewer code cleanup. 2019-01-22 10:14:07 +01:00
Warren Buckley
dda9c5183c Updates the composer/registration of JSONLogViewer - Can't use default parameters with DI hence needed to use factory & new up an instance 2019-01-21 16:36:47 +00:00
Warren Buckley
1d39c177cc Adds in private method EnsureFileExists as it was removed from IOHelper 2019-01-21 11:48:55 +00:00
Warren Buckley
9ce35d25d2 Merge remote-tracking branch 'origin/temp8' into temp8-logviewer
# Conflicts:
#	src/Umbraco.Core/Migrations/Install/DatabaseSchemaCreator.cs
2019-01-07 09:59:15 +00:00
Warren Buckley
28fa60ea46 Fix when querying logs with invalid log level passed in as a string filter - now checks its valid/part of the enum 2018-11-19 14:22:29 +00:00
Warren Buckley
b1244dfa1b Update JsonLogViewer & undelrying base class to support setting path to log files & path to search file - so can be used in testing 2018-11-16 13:20:21 +00:00
Warren Buckley
c5b7543e54 Update to pass dates through correctly 2018-11-02 15:32:37 +00:00
Warren Buckley
7a23fdc1ea Update logic for pre-flight check 2018-11-02 11:09:59 +00:00
Warren Buckley
24a6aecd73 Adds in a new API endpoint to get the size of logs - which will determine to display a warning message if the filesize is too big to read (to help prevent the CPU & memory being eaten up & killing the site) 2018-11-01 16:14:03 +00:00
Warren Buckley
436a6df917 Fix up log viewer - if viewing all log items & filterExpression is null or emtpy string return all log items 2018-10-30 12:33:28 +00:00
Warren Buckley
5084c82ac7 Suggestion after talking with Stephane for some refactorings 2018-10-04 15:13:56 +01:00
Warren Buckley
964dd0374d Makes SavedSearches Get, Add & Delete methods virtual - as you may only want to implement the GetLogs but NOT the GetSavedSearch method for example 2018-09-24 13:12:30 +01:00
Warren Buckley
2ed048e4e1 Improves logic for single word search to use Message Like expression - Thanks Dan Booth
Co-authored-by: Dan Booth <dan@diplo.co.uk>
Co-authored-by: Warren Buckley <warren@umbraco.com>
2018-09-19 21:22:10 +01:00
Warren Buckley
9f5fe7ddfe Adds some logic if we get 0 results back and the search expression contains no spaces (we retry with a message like filter)
Moves some of the logic into methods - as we end up reusing it
2018-09-18 21:50:31 +01:00
Warren Buckley
2f9459f296 Adds in functionality to remove items from the saved searches - Thanks Dan Booth
Co-authored-by: Dan Booth <dan@diplo.co.uk>
Co-authored-by: Warren Buckley <warren@umbraco.com>
2018-09-14 15:17:12 +01:00
Warren Buckley
57a7cf3903 We can now save a query to the JSON file on disk now - for our cheap persistence layer 2018-09-12 16:14:42 +01:00
Warren Buckley
0933443cb3 Adds in new API endpoint that get the saved search - our default implmentation gets them from a JSON file off disk
* If the API call fails then we load in some defaults
* The GetSavedSearches is Abstract so along with the GetLogs the GetSavedSearches could be custom implemented if it needed to come from a DB or some other location for dev's needs
2018-09-12 11:35:51 +01:00
Warren Buckley
c3cfee7b2c Need to use the EscapleLikeExpression method instead for the fallback check 2018-09-12 11:33:19 +01:00
Warren Buckley
d38e4a0442 Adds in fallback logic to do a search on @Message which is the rendered message template along with a SQL like. Thanks Diplo aka Dan Booth
@Message like '%find me%'
2018-09-11 15:06:35 +01:00
Warren Buckley
8cd28a62ea Rename CommonLogMessage to LogTemplate 2018-09-10 09:40:21 +01:00
Warren Buckley
c403df1990 Update to Common Log Messages - it now returns all unique message templates and their counts
In the UI we display the total count of unique but use LimitTo AngularJS filter to continue to display 10 items
Returning all items so that we have a way to show the next 10 items or similar
2018-09-07 21:43:44 +01:00
Warren
96d76c211c Adds in support for log level filtering - rather than using expressions 2018-09-03 21:29:13 +01:00
Warren
20cf8a7637 Create a base class - so we can have the GetLogs implemented by 3rd party devs. Say from Azure Table Storage for example 2018-08-31 21:57:51 +01:00
Warren
c3fa12be6e Exception needs to be a string as Serilog cant easily convert JSON serialised EX back to proper exceptions so we call ToString on it instead 2018-08-30 16:24:34 +01:00
Warren
e4c7609675 Fixes paging and uses the same Serilog Expression filtering when setting up loggers to query the same LogEvents loaded into memory
* StartsWith(SourceContext, 'Umbraco.Core')
* StartsWith(SourceContext, 'Umbraco.Core') and @MessageTemplate='[Timing {TimingId}] {EndMessage} ({TimingDuration}ms)'
* @MessageTemplate='[Timing {TimingId}] {EndMessage} ({TimingDuration}ms)' and TimingDuration > 1000
2018-08-29 19:11:20 +01:00
Warren
fcf8290df9 Update WebAPI method for GetLogs so that we can test out some Expression filter queries in POSTMAN 2018-08-29 18:37:37 +01:00
Warren
424ae7bb91 WIP to open a range of log files 2018-08-28 21:12:38 +01:00
Warren
4ce33c4e3d Updates signature with start/end date and prep for returning paginated logs items 2018-08-28 18:30:58 +01:00
Warren
152ddbd252 Adds LogViewerComponent & registers singleton in DI (3rd party devs will have to disable this component & register their own implementation)
Get some more of the basic WebAPI stubs fleshed out to get some data to start using in the UI layer
2018-08-28 14:48:54 +01:00
Warren
cae468eaeb Some rough untested POC code to read JSON log file from disk 2018-08-27 20:05:17 +01:00