Closed ara4n closed 7 years ago
I wouldn't go that far :wink:
So the plan on this is to:
console
to write logs to a big string.console.log
call).log_$ID
, without indexes for now and we can see how big single key/values can get.console.log
vs console.error
). It looks like there is an LZ implementation for precisely this kind of thing (storage in local storage) which might be interesting to look at.Having spoke about this a bit more, it's going to be a PITA if it turns out the local storage impl isn't up to the job. We might just want to jump straight to IndexedDB. We will be using it for #121 anyway sooo... might as well.
Sending wise:
Spoke about this on #riot-dev and:
localForage
and rely on it falling back?config.json
and encrypt the logs before uploading to the content repo. However, @dbkr points out this is painful both on the client (webcrypto) and the server (decrypting the logs). Having a POST API or something makes this moot, so is preferable.So sending wise, the plan:
This will also make @ylecollen :happypanda: for https://github.com/vector-im/riot-android/issues/842
Riot-Web work is now complete. It will attempt to POST logs to an endpoint specified in config.json
, and there's UI in UserSettings if there is an endpoint available.
Server work is blocked pending clarification on where the logs should end up. I was under the impression that dumping them on disk would suffice, but as per https://github.com/vector-im/riot-web/pull/3072#issuecomment-275372471 it appears that they should end up in a bug tracker. See that PR for further discussion on the practicalities.
kegan did this.
this is really important now given it's getting in the way of debugging e2e work. i think @kegsay volunteered? O:-)