Ottomata has submitted this change and it was merged. ( https://gerrit.wikimedia.org/r/389861 )
Change subject: Add exception guard for json parsing in eventlogging mysql filter ...................................................................... Add exception guard for json parsing in eventlogging mysql filter This is temporary to help with transition as part of T179625. This will be removed in https://gerrit.wikimedia.org/r/#/c/389722/ anyway. Bug: T179625 Change-Id: I5313147c8520556ecd34c389367e785ea37d959d --- M modules/eventlogging/files/filters.py 1 file changed, 13 insertions(+), 1 deletion(-) Approvals: Ottomata: Looks good to me, approved jenkins-bot: Verified diff --git a/modules/eventlogging/files/filters.py b/modules/eventlogging/files/filters.py index e411a89..9ad0fe2 100644 --- a/modules/eventlogging/files/filters.py +++ b/modules/eventlogging/files/filters.py @@ -1,4 +1,5 @@ import json +import logging def should_insert_event(e): @@ -11,7 +12,16 @@ if 'userAgent' not in e: return True - user_agent_dict = json.loads(e['userAgent']) + if isinstance(e['userAgent'], dict): + user_agent_dict = e['userAgent'] + else: + try: + user_agent_dict = json.loads(e['userAgent']) + except Exception as ex: + logging.warn('userAgent is a {}. Skipping insertion. userAgent: {}. ({})'.format( + type(e['userAgent']), e['userAgent'], ex + )) + return False is_bot = user_agent_dict.get('is_bot', False) is_mediawiki = user_agent_dict.get('is_mediawiki', False) @@ -20,4 +30,6 @@ if is_bot and not is_mediawiki: return False else: + if isinstance(e['userAgent'], dict): + e['userAgent'] = json.dumps(e['userAgent']) return True -- To view, visit https://gerrit.wikimedia.org/r/389861 To unsubscribe, visit https://gerrit.wikimedia.org/r/settings Gerrit-MessageType: merged Gerrit-Change-Id: I5313147c8520556ecd34c389367e785ea37d959d Gerrit-PatchSet: 3 Gerrit-Project: operations/puppet Gerrit-Branch: production Gerrit-Owner: Ottomata <[email protected]> Gerrit-Reviewer: Ottomata <[email protected]> Gerrit-Reviewer: Volans <[email protected]> Gerrit-Reviewer: jenkins-bot <> _______________________________________________ MediaWiki-commits mailing list [email protected] https://lists.wikimedia.org/mailman/listinfo/mediawiki-commits
