caldav: add EGW SQL log cleaning (#88974) #510
Loading…
Reference in New Issue
No description provided.
Delete Branch "wip/88974-handle-random-sql-log-in-reply"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
57fea6a8bd
to191d2d3045
WIP: wip/88974-handle-random-sql-log-in-replyto wip/88974-handle-random-sql-log-in-reply@ -114,6 +114,22 @@ EVENT_SCHEMA = {
}
def clean_EGW_response(req, *args, **kwargs):
https://peps.python.org/pep-0008/#function-and-variable-names :)
@ -117,0 +122,4 @@
- startswith "==> SQL =>"
- endswith "<br>"
'''
req._content = b'\n'.join(
C'est une réponse qu'on manipule ici, autant l'appeler
response
:)@ -117,0 +123,4 @@
- endswith "<br>"
'''
req._content = b'\n'.join(
spl
Cette variable pourrait s'appeler
line
, toujours mieux d'avoir des vrais mots !@ -117,0 +124,4 @@
'''
req._content = b'\n'.join(
spl
for spl in req.text.encode().split(b'\n')
Sûrement plus safe de choper le binaire direct avec
req.content
Bien vu ! J'avais commencé par testé ça, mais
content
était àFalse
: sûrement un cas particulier durant mes tests !@ -117,0 +125,4 @@
req._content = b'\n'.join(
spl
for spl in req.text.encode().split(b'\n')
if not spl.startswith(b'==> SQL =>') or not spl.endswith(b'<br>')
Détail mais je pensais que tu m'avais dit que le SQL était toujours en première ligne avant le XML, ça aurait permis de ne pas faire référence à un format de log qui a plus de chance de changer que le format caldav ?
Navré si j'ai pas été clair.
Donc, en fait, je ne sais pas si le message de log est vraiment toujours en première ligne :/
Et oui, totalement d'accord avec toi sur le principe de matcher le format de la ligne de log. Cependant, dans notre cas, la ligne de log SQL ne changera pas sans MàJ d'EGW. Du coup je trouvais ça relativement raisonnable d'identifier le ligne de log avec son prefix ( https://github.com/ADOdb/ADOdb/blob/master/drivers/adodb-postgres64.inc.php#L574 ) et son suffix ( https://github.com/ADOdb/ADOdb/blob/master/adodb.inc.php#L916 ) qui :
Mais si tu préfère je peux :
[A-Z]
par exemple)Je viens de tester avec la récup des congés depuis barbacompta, où le SQL sort presque de manière déterministe, et effectivement je reçois une réponse qui commence par :
Pour une requête qui retourne des évènements.
Donc laissons comme ça !
wip/88974-handle-random-sql-log-in-replyto caldav: add EGW SQL log cleaning (#88974)191d2d3045
to6741614992
6741614992
to23a59e3f0f