Skip to content

Commit 1b6833d

Browse files
Mahadik, Mukul ChandrakantMahadik, Mukul Chandrakant
authored andcommitted
Added flag to existing extract script to allow purging
1 parent a600682 commit 1b6833d

File tree

1 file changed

+10
-3
lines changed

1 file changed

+10
-3
lines changed

bin/debug/extract_timeline_for_day_range_and_user.py

Lines changed: 10 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -25,8 +25,10 @@
2525
# only needed to read the motion_activity
2626
# https://github.com/e-mission/e-mission-docs/issues/356#issuecomment-520630934
2727
import emission.export.export as eee
28+
import emission.purge_restore.export_timeseries as epret
29+
import emission.purge_restore.purge_data as eprpd
2830

29-
def export_timeline(user_id, start_day_str, end_day_str, timezone, file_name):
31+
def export_timeline(user_id, start_day_str, end_day_str, timezone, file_name, purge_ts_entries):
3032
logging.info("Extracting timeline for user %s day %s -> %s and saving to file %s" %
3133
(user_id, start_day_str, end_day_str, file_name))
3234

@@ -38,7 +40,11 @@ def export_timeline(user_id, start_day_str, end_day_str, timezone, file_name):
3840
end_day_ts, arrow.get(end_day_ts).to(timezone)))
3941

4042
ts = esta.TimeSeries.get_time_series(user_id)
41-
eee.export(user_id, ts, start_day_ts, end_day_ts, "%s_%s" % (file_name, user_id), True)
43+
if purge_ts_entries:
44+
export_queries = epret.export(user_id, ts, start_day_ts, end_day_ts, file_name, False)
45+
eprpd.PurgeDataPipeline().delete_timeseries_entries(user_id, ts, start_day_ts, end_day_ts, export_queries)
46+
else:
47+
eee.export(user_id, ts, start_day_ts, end_day_ts, "%s_%s" % (file_name, user_id), True)
4248

4349
import emission.core.get_database as edb
4450
pipeline_state_list = list(edb.get_pipeline_state_db().find({"user_id": user_id}))
@@ -56,7 +62,7 @@ def export_timeline_for_users(user_id_list, args):
5662
logging.info("=" * 50)
5763
export_timeline(user_id=curr_uuid, start_day_str=args.start_day,
5864
end_day_str= args.end_day, timezone=args.timezone,
59-
file_name=args.file_prefix)
65+
file_name=args.file_prefix, purge_ts_entries=args.purge)
6066

6167
if __name__ == '__main__':
6268
logging.basicConfig(level=logging.DEBUG)
@@ -72,6 +78,7 @@ def export_timeline_for_users(user_id_list, args):
7278
parser.add_argument("start_day", help="start day in utc - e.g. 'YYYY-MM-DD'" )
7379
parser.add_argument("end_day", help="start day in utc - e.g. 'YYYY-MM-DD'" )
7480
parser.add_argument("file_prefix", help="prefix for the filenames generated - e.g /tmp/dump_ will generate files /tmp/dump_<uuid1>.gz, /tmp/dump_<uuid2>.gz..." )
81+
parser.add_argument("-p", "--purge", default=False, action='store_true', help="select whether to purge the timeseries database entries (only timeseries_db not analysis_db)")
7582

7683
args = parser.parse_args()
7784

0 commit comments

Comments
 (0)