From aa901b97daf00596da04ffd534a05caf583691a0 Mon Sep 17 00:00:00 2001 From: Michael Kaye <1917473+michaelkaye@users.noreply.github.com> Date: Tue, 18 Jan 2022 17:24:23 +0000 Subject: [PATCH 1/7] Record some information about submitted reports from existing clients. Attempting to log what is in the wild, rather than what is expected/desired. --- docs/submitted_reports.md | 84 +++++++++++++++++++++++++++++++++++++++ 1 file changed, 84 insertions(+) create mode 100644 docs/submitted_reports.md diff --git a/docs/submitted_reports.md b/docs/submitted_reports.md new file mode 100644 index 0000000..d7f4daf --- /dev/null +++ b/docs/submitted_reports.md @@ -0,0 +1,84 @@ +# Common report styles. + +Rageshakes can come from a number of applications, and we provide some practical notes on the generated format. + +At present these should not be considered absolute nor a structure to follow; but an attempt to document the +currently visible formats as of January 2022 + + +## Feedback + +Log files are not transmitted, the main feedback is entirely within the user message body. + +## Element Web + +Log files are transmitted in reverse order (0000 is the youngest) + +Log line format: +``` +2022-01-17T14:57:20.806Z I Using WebAssembly Olm +< ---- TIMESTAMP ------> L <-- Message ---- + +L = log level, (W=Warn, I=Info, etc) +``` + +New log files are started each restart of the app. + + +## Element desktop + + + +## Element iOS + +Crash Log is special and is sent only once (and deleted on the device afterwards) + +`crash.log` + + + +Following logs are available, going back in time with ascending number. +console.log with no number is the current log file. +``` +console.log (newest) +console-1.log +... +console-49.log (oldest) + +console-nse.log (newest) +console-nse-1.log +... +console-nse-49.log (oldest) + +console-share.log (newest) +console-share-1.log +console-share-49.log (oldest) +``` + +## Element Android + +Log file 0000 is special and + +Log line format: +``` +01-17 14:59:30.657 14303 14303 W Activity: Slow Operation: +<-- TIMESTAMP ---> <-?-> <-?-> L <-- Message -- + +L = Log Level (W=Warn, I=Info etc) +``` + + +Remaining log files are transmitted according to their position in the round-robin logging to file - there will be (up to) 7 files written to in a continious loop; one of the seven will be the oldest, the rest will be in order. + +New log files are started every 30Mb or restart of the app. + +Log line format: +``` +2022-01-17T13:06:36*838GMT+00:00Z 12226 D/ /Tag: Migration: Importing legacy session +< ---- TIMESTAMP ---------------> <-?-> L <-- Message ---- + +L = log level, (W=Warn, I=Info, etc) +``` + + + From a5d3006fe0b25e043dd2f4b8de30a0cc7e8764fe Mon Sep 17 00:00:00 2001 From: Michael Kaye <1917473+michaelkaye@users.noreply.github.com> Date: Wed, 19 Jan 2022 13:34:54 +0000 Subject: [PATCH 2/7] More information about log formats --- docs/submitted_reports.md | 17 ++++++++++++----- 1 file changed, 12 insertions(+), 5 deletions(-) diff --git a/docs/submitted_reports.md b/docs/submitted_reports.md index d7f4daf..67c2728 100644 --- a/docs/submitted_reports.md +++ b/docs/submitted_reports.md @@ -57,7 +57,9 @@ console-share-49.log (oldest) ## Element Android -Log file 0000 is special and +There is a historical issue with the naming of files, documented in issue #40 + +Log file 0000 is odd, it contains the logcat data if sent Log line format: ``` @@ -66,12 +68,8 @@ Log line format: L = Log Level (W=Warn, I=Info etc) ``` - - Remaining log files are transmitted according to their position in the round-robin logging to file - there will be (up to) 7 files written to in a continious loop; one of the seven will be the oldest, the rest will be in order. -New log files are started every 30Mb or restart of the app. - Log line format: ``` 2022-01-17T13:06:36*838GMT+00:00Z 12226 D/ /Tag: Migration: Importing legacy session @@ -80,5 +78,14 @@ Log line format: L = log level, (W=Warn, I=Info, etc) ``` +Once the fix is in place, we will see the following files: +``` +logcatError.log +logcat.log +crash.log +keyrequests.log +log-[1-7].log +``` +Log 1-7 are logs from a round-robin buffer and are ordered but the start point is undefined From bbe36198b7076932232765c46a4d4a3c7e546dc0 Mon Sep 17 00:00:00 2001 From: Michael Kaye <1917473+michaelkaye@users.noreply.github.com> Date: Fri, 21 Jan 2022 11:45:58 +0000 Subject: [PATCH 3/7] Apply suggestions from code review Some textual tweaks. Co-authored-by: Richard van der Hoff <1389908+richvdh@users.noreply.github.com> --- docs/submitted_reports.md | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/docs/submitted_reports.md b/docs/submitted_reports.md index 67c2728..327392d 100644 --- a/docs/submitted_reports.md +++ b/docs/submitted_reports.md @@ -1,14 +1,14 @@ -# Common report styles. +# Common report styles Rageshakes can come from a number of applications, and we provide some practical notes on the generated format. At present these should not be considered absolute nor a structure to follow; but an attempt to document the -currently visible formats as of January 2022 +currently visible formats as of January 2022. ## Feedback -Log files are not transmitted, the main feedback is entirely within the user message body. +Log files are not transmitted; the main feedback is entirely within the user message body. ## Element Web @@ -57,9 +57,9 @@ console-share-49.log (oldest) ## Element Android -There is a historical issue with the naming of files, documented in issue #40 +There is a historical issue with the naming of files, documented in [issue #40](https://github.com/matrix-org/rageshake/issues/40). -Log file 0000 is odd, it contains the logcat data if sent +Log file 0000 is odd, it contains the logcat data if sent. Log line format: ``` @@ -78,7 +78,7 @@ Log line format: L = log level, (W=Warn, I=Info, etc) ``` -Once the fix is in place, we will see the following files: +Once the fix to #40 is in place, we will see the following files: ``` logcatError.log From e5a067b4b963ef0a55d2c92c5ae5108c5e6010f6 Mon Sep 17 00:00:00 2001 From: Michael Kaye <1917473+michaelkaye@users.noreply.github.com> Date: Fri, 21 Jan 2022 11:48:40 +0000 Subject: [PATCH 4/7] Combine eleweb/eledesktop, add notes about process/thread ID. --- docs/submitted_reports.md | 20 +++++++------------- 1 file changed, 7 insertions(+), 13 deletions(-) diff --git a/docs/submitted_reports.md b/docs/submitted_reports.md index 327392d..082aafa 100644 --- a/docs/submitted_reports.md +++ b/docs/submitted_reports.md @@ -2,15 +2,13 @@ Rageshakes can come from a number of applications, and we provide some practical notes on the generated format. -At present these should not be considered absolute nor a structure to follow; but an attempt to document the -currently visible formats as of January 2022. - +At present these should not be considered absolute nor a structure to follow; but an attempt to document the currently visible formats as of January 2022. ## Feedback Log files are not transmitted; the main feedback is entirely within the user message body. -## Element Web +## Element Web / Element Desktop Log files are transmitted in reverse order (0000 is the youngest) @@ -24,19 +22,12 @@ L = log level, (W=Warn, I=Info, etc) New log files are started each restart of the app. - -## Element desktop - - - ## Element iOS Crash Log is special and is sent only once (and deleted on the device afterwards) `crash.log` - - Following logs are available, going back in time with ascending number. console.log with no number is the current log file. ``` @@ -64,18 +55,21 @@ Log file 0000 is odd, it contains the logcat data if sent. Log line format: ``` 01-17 14:59:30.657 14303 14303 W Activity: Slow Operation: -<-- TIMESTAMP ---> <-?-> <-?-> L <-- Message -- +<-- TIMESTAMP ---> <-P-> <-T-> L <-- Message -- L = Log Level (W=Warn, I=Info etc) +P = Process ID +T = Thread ID ``` Remaining log files are transmitted according to their position in the round-robin logging to file - there will be (up to) 7 files written to in a continious loop; one of the seven will be the oldest, the rest will be in order. Log line format: ``` 2022-01-17T13:06:36*838GMT+00:00Z 12226 D/ /Tag: Migration: Importing legacy session -< ---- TIMESTAMP ---------------> <-?-> L <-- Message ---- +< ---- TIMESTAMP ---------------> <-P-> L <-- Message ---- L = log level, (W=Warn, I=Info, etc) +P = Process ID ``` Once the fix to #40 is in place, we will see the following files: From 108594b531fcd07d101da08e236cc97b3c646820 Mon Sep 17 00:00:00 2001 From: Michael Kaye <1917473+michaelkaye@users.noreply.github.com> Date: Fri, 21 Jan 2022 11:52:45 +0000 Subject: [PATCH 5/7] Link into docs for the logs and compressed-logs formats. --- README.md | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/README.md b/README.md index ae68f36..0746560 100644 --- a/README.md +++ b/README.md @@ -68,10 +68,16 @@ logs.) * `id`: textual identifier for the logs. Used as the filename, as above. * `lines`: log data. Newlines should be encoded as `\n`, as normal in JSON). + A summary of the current log file formats that are uploaded for `log` and + `compressed-log` is [available](docs/submitted_reports.md). + * `compressed-log`: a gzipped logfile. Decompressed and then treated the same as `log`. Compressed logs are not supported for the JSON upload encoding. + + A summary of the current log file formats that are uploaded for `log` and + `compressed-log` is [available](docs/submitted_reports.md). * `file`: an arbitrary file to attach to the report. Saved as-is to disk, and a link is added to the github issue. The filename must be in the format @@ -98,4 +104,4 @@ You can get notifications when a new rageshake arrives on the server. Currently this tool supports pushing notifications as GitHub issues in a repo, through a Slack webhook or by email, cf sample config file for how to -configure them. \ No newline at end of file +configure them. From d83052373178e5557c1fcf1dba7d3a3f9631f733 Mon Sep 17 00:00:00 2001 From: Michael Kaye <1917473+michaelkaye@users.noreply.github.com> Date: Mon, 24 Jan 2022 13:47:01 +0000 Subject: [PATCH 6/7] All platforms (web, ios, android) provide feedback in various formats, none of which contain log files. --- docs/submitted_reports.md | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/docs/submitted_reports.md b/docs/submitted_reports.md index 082aafa..45bd719 100644 --- a/docs/submitted_reports.md +++ b/docs/submitted_reports.md @@ -8,6 +8,8 @@ At present these should not be considered absolute nor a structure to follow; bu Log files are not transmitted; the main feedback is entirely within the user message body. +This occurs from all platforms. + ## Element Web / Element Desktop Log files are transmitted in reverse order (0000 is the youngest) @@ -20,7 +22,7 @@ Log line format: L = log level, (W=Warn, I=Info, etc) ``` -New log files are started each restart of the app. +New log files are started each restart of the app, but some log files may not contain all data from the start of the session. ## Element iOS From 5d59304d9b5496325b5990a93c5f42e08de95d3e Mon Sep 17 00:00:00 2001 From: Michael Kaye <1917473+michaelkaye@users.noreply.github.com> Date: Mon, 24 Jan 2022 13:48:01 +0000 Subject: [PATCH 7/7] Add changelog --- changelog.d/44.misc | 1 + 1 file changed, 1 insertion(+) create mode 100644 changelog.d/44.misc diff --git a/changelog.d/44.misc b/changelog.d/44.misc new file mode 100644 index 0000000..b5f09c3 --- /dev/null +++ b/changelog.d/44.misc @@ -0,0 +1 @@ +Add documentation on the types and formats of files submitted to the rageshake server