diff --git a/dftimewolf/cli/dftimewolf_recipes.py b/dftimewolf/cli/dftimewolf_recipes.py index dbac1ff35..691348747 100644 --- a/dftimewolf/cli/dftimewolf_recipes.py +++ b/dftimewolf/cli/dftimewolf_recipes.py @@ -4,7 +4,6 @@ import argparse from contextlib import redirect_stderr, redirect_stdout -import datetime import curses import logging import os @@ -522,10 +521,7 @@ def RunTool(cdm: Optional[CursesDisplayManager] = None) -> int: tool.telemetry.LogTelemetry('module', module, 'core', recipe_name) tool.telemetry.LogTelemetry( - 'workflow_start', - datetime.datetime.now().strftime('%Y-%m-%dT%H:%M:%S.%fZ'), - 'core', - recipe_name) + 'workflow_start', str(time.time() * 1000), 'core', recipe_name) try: tool.ValidateArguments(tool.dry_run) diff --git a/dftimewolf/lib/collectors/grr_base.py b/dftimewolf/lib/collectors/grr_base.py index f711e4ec8..cd0c21b04 100644 --- a/dftimewolf/lib/collectors/grr_base.py +++ b/dftimewolf/lib/collectors/grr_base.py @@ -112,13 +112,14 @@ def _WrapGRRRequestWithApproval( approval_sent = False approval_url = None approval_url_shown = False - start = time.time() + # Log time in ms + start = time.time() * 1000 telemetry_callback({"mpa_start": str(start)}) while True: try: result = grr_function(*args, **kwargs) - telemetry_callback({"mpa_success": str(time.time())}) - telemetry_callback({"mpa_duration": str(time.time() - start)}) + telemetry_callback({"mpa_success": str(time.time() * 1000)}) + telemetry_callback({"mpa_duration": str((time.time() * 1000) - start)}) return result except grr_errors.AccessForbiddenError as exception: logger.warning(f"No valid approval found: {exception!s}")