Makes logs less noisy

- Show telemetry enabled/disabled state on init, not every 2 minutes
- Convert no docs synced logs to debug level instead of warning
  Having synced docs isn't as important to use Khoj now, unlike before
This commit is contained in:
Debanjum Singh Solanky 2024-04-13 11:22:58 +05:30
parent b8bc6bee83
commit b820daf38f
3 changed files with 11 additions and 8 deletions

View file

@ -39,7 +39,7 @@ from khoj.routers.twilio import is_twilio_enabled
from khoj.utils import constants, state
from khoj.utils.config import SearchType
from khoj.utils.fs_syncer import collect_files
from khoj.utils.helpers import is_none_or_empty
from khoj.utils.helpers import is_none_or_empty, telemetry_disabled
from khoj.utils.rawconfig import FullConfig
logger = logging.getLogger(__name__)
@ -232,6 +232,9 @@ def configure_server(
state.search_models = configure_search(state.search_models, state.config.search_type)
setup_default_agent()
message = "📡 Telemetry disabled" if telemetry_disabled(state.config.app) else "📡 Telemetry enabled"
logger.info(message)
if not init:
initialize_content(regenerate, search_type, user)
@ -329,9 +332,7 @@ def configure_search_types():
@schedule.repeat(schedule.every(2).minutes)
def upload_telemetry():
if not state.config or not state.config.app or not state.config.app.should_log_telemetry or not state.telemetry:
message = "📡 No telemetry to upload" if not state.telemetry else "📡 Telemetry logging disabled"
logger.debug(message)
if telemetry_disabled(state.config.app) or not state.telemetry:
return
try:

View file

@ -289,9 +289,7 @@ async def extract_references_and_questions(
return compiled_references, inferred_queries, q
if not await sync_to_async(EntryAdapters.user_has_entries)(user=user):
logger.warning(
"No content index loaded, so cannot extract references from knowledge base. Please configure your data sources and update the index to chat with your notes."
)
logger.debug("No documents in knowledge base. Use a Khoj client to sync and chat with your docs.")
return compiled_references, inferred_queries, q
# Extract filter terms from user message

View file

@ -233,6 +233,10 @@ def get_server_id():
return server_id
def telemetry_disabled(app_config: AppConfig):
return not app_config or not app_config.should_log_telemetry
def log_telemetry(
telemetry_type: str,
api: str = None,
@ -242,7 +246,7 @@ def log_telemetry(
):
"""Log basic app usage telemetry like client, os, api called"""
# Do not log usage telemetry, if telemetry is disabled via app config
if not app_config or not app_config.should_log_telemetry:
if telemetry_disabled(app_config):
return []
if properties.get("server_id") is None: