Skip to content

Commit

Permalink
Move migration logger initialization (cvat-ai#3170)
Browse files Browse the repository at this point in the history
* Move migration logger initialization

* Update CHANGELOG

* Update license header
  • Loading branch information
Marishka17 authored May 7, 2021
1 parent 61d0bb3 commit 1f94aca
Show file tree
Hide file tree
Showing 3 changed files with 20 additions and 17 deletions.
3 changes: 2 additions & 1 deletion CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -14,9 +14,10 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
- A script to convert some kinds of DICOM files to regular images (<https://github.com/openvinotoolkit/cvat/pull/3095>)
- Helm chart prototype (<https://github.com/openvinotoolkit/cvat/pull/3102>)


### Changed

- Place of migration logger initialization (<https://github.com/openvinotoolkit/cvat/pull/3170>)

### Deprecated

### Removed
Expand Down
14 changes: 13 additions & 1 deletion cvat/apps/engine/log.py
Original file line number Diff line number Diff line change
@@ -1,8 +1,9 @@
# Copyright (C) 2018 Intel Corporation
# Copyright (C) 2018-2021 Intel Corporation
#
# SPDX-License-Identifier: MIT

import logging
import sys
from cvat.settings.base import LOGGING
from .models import Job, Task, Project

Expand All @@ -24,6 +25,17 @@ def _get_job(jid):
except Exception:
raise Exception('{} key must be a job identifier'.format(jid))

def get_logger(logger_name, log_file):
logger = logging.getLogger(name=logger_name)
logger.setLevel(logging.INFO)
file_handler = logging.FileHandler(log_file)
formatter = logging.Formatter('%(asctime)s - %(name)s - %(levelname)s - %(message)s')
file_handler.setFormatter(formatter)
logger.addHandler(file_handler)
logger.addHandler(logging.StreamHandler(sys.stdout))
logger.addHandler(logging.StreamHandler(sys.stderr))
return logger

class ProjectLoggerStorage:
def __init__(self):
self._storage = dict()
Expand Down
20 changes: 5 additions & 15 deletions cvat/apps/engine/migrations/0038_manifest.py
Original file line number Diff line number Diff line change
Expand Up @@ -2,38 +2,28 @@

import glob
import itertools
import logging
import os
import sys
from re import search

from django.conf import settings
from django.db import migrations

from cvat.apps.engine.log import get_logger
from cvat.apps.engine.models import (DimensionType, StorageChoice,
StorageMethodChoice)
from cvat.apps.engine.media_extractors import get_mime
from utils.dataset_manifest import ImageManifestManager, VideoManifestManager

def get_logger():
migration = os.path.basename(__file__).split(".")[0]
logger = logging.getLogger(name=migration)
logger.setLevel(logging.INFO)
file_handler = logging.FileHandler(os.path.join(settings.MIGRATIONS_LOGS_ROOT, f"{migration}.log"))
formatter = logging.Formatter('%(asctime)s - %(name)s - %(levelname)s - %(message)s')
file_handler.setFormatter(formatter)
logger.addHandler(file_handler)
logger.addHandler(logging.StreamHandler(sys.stdout))
logger.addHandler(logging.StreamHandler(sys.stderr))
return logger
MIGRATION_NAME = os.path.splitext(os.path.basename(__file__))[0]
MIGRATION_LOG = os.path.join(settings.MIGRATIONS_LOGS_ROOT, f"{MIGRATION_NAME}.log")

def _get_query_set(apps):
Data = apps.get_model("engine", "Data")
query_set = Data.objects.filter(storage_method=StorageMethodChoice.CACHE)
return query_set

def migrate2meta(apps, shema_editor):
logger = get_logger()
logger = get_logger(MIGRATION_NAME, MIGRATION_LOG)
query_set = _get_query_set(apps)
for db_data in query_set:
try:
Expand Down Expand Up @@ -74,7 +64,7 @@ def migrate2meta(apps, shema_editor):
logger.error(str(ex))

def migrate2manifest(apps, shema_editor):
logger = get_logger()
logger = get_logger(MIGRATION_NAME, MIGRATION_LOG)
logger.info('The data migration has been started for creating manifest`s files')
query_set = _get_query_set(apps)
logger.info('Need to update {} data objects'.format(len(query_set)))
Expand Down

0 comments on commit 1f94aca

Please sign in to comment.