Skip to content

Commit 8c46b42

Browse files
author
tahzeer
committed
feat(logging): add logging for data loading process
1 parent bc6b6a3 commit 8c46b42

File tree

1 file changed

+9
-0
lines changed

1 file changed

+9
-0
lines changed

iam-staff-portal-api/src/iam_staff_portal_api/data/data_loader.py

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,5 @@
11
import json
2+
import logging
23
from abc import ABC
34
from datetime import date, datetime
45
from pathlib import Path
@@ -18,6 +19,8 @@
1819
StaffRolePermission,
1920
)
2021

22+
_logger = logging.getLogger("iam-staff-data-loader")
23+
2124

2225
class DataLoaderBase(ABC):
2326
data_models = (
@@ -67,8 +70,11 @@ async def seed_models_from_dir(
6770
data_dir: Path,
6871
) -> None:
6972
if not data_dir.exists() or not data_dir.is_dir():
73+
_logger.info("Skipping missing data directory: %s", data_dir)
7074
return
7175

76+
_logger.info("Loading data from %s", data_dir)
77+
7278
for model in self.data_models:
7379
rows = self.load_dataset(model, data_dir)
7480
await self.seed_if_empty(session, model, rows)
@@ -86,6 +92,7 @@ async def seed_if_empty(
8692
if not rows:
8793
return
8894

95+
_logger.info("Seeding %s with %s rows", model.__tablename__, len(rows))
8996
await session.execute(insert(model), self.coerce_rows_for_model(model, rows))
9097

9198
def coerce_rows_for_model(
@@ -134,10 +141,12 @@ async def run(cls) -> None:
134141
loader = cls()
135142
session_factory = loader.create_session_factory()
136143

144+
_logger.info("Starting IAM staff data loader")
137145
async with session_factory() as session:
138146
await loader.load_data(session)
139147
await loader.load_fallback_data(session)
140148
await session.commit()
149+
_logger.info("Completed IAM staff data loader")
141150

142151
async def load_data(self, session: AsyncSession) -> None:
143152
await self.seed_models_from_dir(session, self.get_mounted_data_dir())

0 commit comments

Comments
 (0)