soft-deactivation: Log users which were soft deactivate/reactivated.

This commit is contained in:
Aditya Bansal
2017-08-16 08:39:06 +05:30
committed by Tim Abbott
parent f5713297c4
commit 34d30706da
2 changed files with 18 additions and 0 deletions

View File

@@ -1,14 +1,27 @@
from __future__ import absolute_import
import logging
from collections import defaultdict
from django.db import transaction
from django.db.models import Max
from django.conf import settings
from django.utils.timezone import now as timezone_now
from typing import DefaultDict, List
from zerver.models import UserProfile, UserMessage, RealmAuditLog, \
Subscription, Message, Recipient, UserActivity, Realm
log_format = "%(asctime)s: %(message)s"
logging.basicConfig(format=log_format)
formatter = logging.Formatter(log_format)
file_handler = logging.FileHandler(settings.SOFT_DEACTIVATION_LOG_PATH)
file_handler.setFormatter(formatter)
logger = logging.getLogger('')
logger.setLevel(logging.INFO)
logger.addHandler(file_handler)
def filter_by_subscription_history(
user_profile, all_stream_messages, all_stream_subscription_logs):
# type: (UserProfile, DefaultDict[int, List[Message]], DefaultDict[int, List[RealmAuditLog]]) -> List[UserMessage]
@@ -162,6 +175,8 @@ def do_soft_deactivate_user(user_profile):
user_profile.save(update_fields=[
'long_term_idle',
'last_active_message_id'])
logger.info('Soft Deactivated user %s (%s)' %
(user_profile.id, user_profile.email))
def do_soft_deactivate_users(users):
# type: (List[UserProfile]) -> None
@@ -191,6 +206,8 @@ def maybe_catch_up_soft_deactivated_user(user_profile):
event_type='user_soft_activated',
event_time=timezone_now()
)
logger.info('Soft Reactivated user %s (%s)' %
(user_profile.id, user_profile.email))
def get_users_for_soft_deactivation(realm, inactive_for_days):
# type: (Realm, int) -> List[UserProfile]

View File

@@ -1003,6 +1003,7 @@ ZULIP_PATHS = [
("DIGEST_LOG_PATH", "/var/log/zulip/digest.log"),
("ANALYTICS_LOG_PATH", "/var/log/zulip/analytics.log"),
("API_KEY_ONLY_WEBHOOK_LOG_PATH", "/var/log/zulip/webhooks_errors.log"),
("SOFT_DEACTIVATION_LOG_PATH", "/var/log/zulip/soft_deactivation.log"),
]
# The Event log basically logs most significant database changes,