fix_unreads: Use logging instead of print.

This commit is contained in:
Steve Howell
2017-09-03 08:35:53 -07:00
committed by showell
parent a2fe4178be
commit 8cc8e87daf
2 changed files with 16 additions and 9 deletions

View File

@@ -2,6 +2,7 @@ from __future__ import absolute_import
from __future__ import print_function
import time
import logging
from typing import Callable, List, TypeVar
from psycopg2.extensions import cursor
@@ -12,6 +13,9 @@ from django.db import connection
from zerver.lib.topic_mutes import build_topic_mute_checker
from zerver.models import UserProfile
logger = logging.getLogger('zulip.fix_unreads')
logger.setLevel(logging.WARNING)
def update_unread_flags(cursor, user_message_ids):
# type: (CursorObj, List[int]) -> None
um_id_list = ', '.join(str(id) for id in user_message_ids)
@@ -27,10 +31,10 @@ def update_unread_flags(cursor, user_message_ids):
def get_timing(message, f):
# type: (str, Callable) -> None
start = time.time()
print(message)
logger.info(message)
f()
elapsed = time.time() - start
print('elapsed time: %.03f\n' % (elapsed,))
logger.info('elapsed time: %.03f\n' % (elapsed,))
def fix_unsubscribed(cursor, user_profile):
@@ -58,7 +62,7 @@ def fix_unsubscribed(cursor, user_profile):
rows = cursor.fetchall()
for row in rows:
recipient_ids.append(row[0])
print(recipient_ids)
logger.info(str(recipient_ids))
get_timing(
'get recipients',
@@ -89,14 +93,14 @@ def fix_unsubscribed(cursor, user_profile):
)
''' % (user_profile.id, recips)
print('''
logger.info('''
EXPLAIN analyze''' + query.rstrip() + ';')
cursor.execute(query)
rows = cursor.fetchall()
for row in rows:
user_message_ids.append(row[0])
print('rows found: %d' % (len(user_message_ids),))
logger.info('rows found: %d' % (len(user_message_ids),))
get_timing(
'finding unread messages for non-active streams',
@@ -146,7 +150,7 @@ def fix_pre_pointer(cursor, user_profile):
rows = cursor.fetchall()
for row in rows:
recipient_ids.append(row[0])
print(recipient_ids)
logger.info(str(recipient_ids))
get_timing(
'find_non_muted_recipients',
@@ -182,7 +186,7 @@ def fix_pre_pointer(cursor, user_profile):
)
''' % (user_profile.id, pointer, recips)
print('''
logger.info('''
EXPLAIN analyze''' + query.rstrip() + ';')
cursor.execute(query)
@@ -190,7 +194,7 @@ def fix_pre_pointer(cursor, user_profile):
for (um_id, recipient_id, topic) in rows:
if not is_topic_muted(recipient_id, topic):
user_message_ids.append(um_id)
print('rows found: %d' % (len(user_message_ids),))
logger.info('rows found: %d' % (len(user_message_ids),))
get_timing(
'finding pre-pointer messages that are not muted',
@@ -211,7 +215,7 @@ def fix_pre_pointer(cursor, user_profile):
def fix(user_profile):
# type: (UserProfile) -> None
print('\n---\nFixing %s:' % (user_profile.email,))
logger.info('\n---\nFixing %s:' % (user_profile.email,))
with connection.cursor() as cursor:
fix_unsubscribed(cursor, user_profile)
fix_pre_pointer(cursor, user_profile)

View File

@@ -1,6 +1,7 @@
from __future__ import absolute_import
from __future__ import print_function
import logging
import sys
from typing import Any, List, Text
@@ -16,6 +17,8 @@ from zerver.models import (
UserProfile
)
logging.getLogger('zulip.fix_unreads').setLevel(logging.INFO)
class Command(ZulipBaseCommand):
help = """Fix problems related to unread counts."""