aboutsummaryrefslogtreecommitdiffstats
path: root/python
diff options
context:
space:
mode:
Diffstat (limited to 'python')
-rw-r--r--python/task_server/__init__.py7
-rw-r--r--python/task_server/__main__.py4
-rw-r--r--python/task_server/globeop.py21
-rw-r--r--python/task_server/rest.py2
4 files changed, 18 insertions, 16 deletions
diff --git a/python/task_server/__init__.py b/python/task_server/__init__.py
index 63d44dd4..9b1e7d35 100644
--- a/python/task_server/__init__.py
+++ b/python/task_server/__init__.py
@@ -1,10 +1,13 @@
from flask import Flask
+from pathlib import Path
app = Flask(__name__)
-import task_server.rest
import logging
import os
-fh = logging.FileHandler(filename=os.path.join(os.environ["LOG_DIR"], 'tasks.log'))
+LOG_DIR = Path(os.environ["LOG_DIR"])
+DAILY_DIR = Path(os.environ["DAILY_DIR"])
+
+fh = logging.FileHandler(filename=LOG_DIR / 'tasks.log')
formatter = logging.Formatter('%(asctime)s - %(name)s - %(levelname)s - %(message)s')
fh.setFormatter(formatter)
diff --git a/python/task_server/__main__.py b/python/task_server/__main__.py
index 72754733..cdab9883 100644
--- a/python/task_server/__main__.py
+++ b/python/task_server/__main__.py
@@ -1,11 +1,11 @@
import logging
import argparse
import datetime
-import os
+from . import LOG_DIR
from .globeop import download_data, upload_data
from sqlalchemy import create_engine
-logging.basicConfig(filename=os.path.join(os.environ["LOG_DIR"], 'globeop.log'),
+logging.basicConfig(filename=LOG_DIR / 'globeop.log',
level=logging.INFO,
format='%(asctime)s %(message)s')
diff --git a/python/task_server/globeop.py b/python/task_server/globeop.py
index e95823c8..4f4def68 100644
--- a/python/task_server/globeop.py
+++ b/python/task_server/globeop.py
@@ -1,8 +1,9 @@
import os
import os.path
+from . import DAILY_DIR
from ftplib import FTP
import gnupg
-from task_server import config
+from . import config
import re
import logging
import sys
@@ -93,7 +94,7 @@ def download_data(workdate):
if not available_files:
logger.error("no file available for date: %s" % str(workdate))
return
- reports_dir = Path(os.environ['DAILY_DIR']) / str(workdate) / "Reports"
+ reports_dir = DAILY_DIR / str(workdate) / "Reports"
if not reports_dir.exists():
reports_dir.mkdir(parents=True)
@@ -121,7 +122,7 @@ def download_data(workdate):
insert_todb(workdate)
def insert_todb(workdate):
- reports_dir = Path(os.environ['DAILY_DIR']) / str(workdate) / "Reports"
+ reports_dir = DAILY_DIR / str(workdate) / "Reports"
engine = create_engine('postgresql://dawn_user@debian/dawndb')
for report in ["Valuation", "Pnl", "CDS"]:
fun = getattr(load_globeop_report, f"read_{report.lower()}_report")
@@ -145,24 +146,22 @@ def upload_bond_marks(engine, workdate):
params=(workdate.date(),))
df.rename(columns={'identifier': 'IDENTIFIER',
'price': 'Price'}, inplace=True)
- filename = 'securitiesNpv{0:%Y%m%d_%H%M%S}.csv'.format(workdate)
- fullpath = os.path.join(os.environ['DAILY_DIR'], str(workdate.date()), filename)
+ fullpath = DAILY_DIR / str(workdate.date()) / f"securitiesNpv{workdate:%Y%m%d_%H%M%S}.csv"
df.to_csv(fullpath, index=False)
ftp = get_ftp('incoming')
- with open(fullpath, "rb") as fh:
- ftp.storbinary('STOR ' + filename, fh)
+ with fullpath.open("rb") as fh:
+ ftp.storbinary('STOR ' + fullpath.name, fh)
logger.info("upload bond marks done")
def upload_cds_marks(engine, workdate):
df = pd.read_sql_query("""SELECT cds.dealid AS "DealID", 'CREDIT_SWAP' AS "Instrument Type",
(a.clean_nav+a.accrued) AS "NPV" from list_abscds_marks(%s) a
JOIN cds USING (security_id)""", engine, params = (workdate.date(),))
- filename = 'otcNpv{0:%Y%m%d}.csv'.format(workdate)
- fullpath = os.path.join(os.environ['DAILY_DIR'], str(workdate.date()), filename)
+ fullpath = DAILY_DIR / str(workdate.date()) / f"otcNpv{workdate:%Y%m%d}.csv"
df.to_csv(fullpath, index=False)
ftp = get_ftp('incoming')
- with open(fullpath, "rb") as fh:
- ftp.storbinary('STOR ' + filename, fh)
+ with fullpath.open("rb") as fh:
+ ftp.storbinary('STOR ' + fullpath.name, fh)
logger.info("upload cds marks done")
def upload_data(engine, workdate):
diff --git a/python/task_server/rest.py b/python/task_server/rest.py
index 62f1e565..06b46de4 100644
--- a/python/task_server/rest.py
+++ b/python/task_server/rest.py
@@ -5,7 +5,7 @@ import redis
from intex.load_intex_collateral import intex_data
from .globeop import download_data
from .insert_tranche_quotes import insert_quotes
-from task_server import app
+from . import app
from flask import request, g
import json