# Path: edx_data_research/parsing/parse.py
# class Parse(Base):
#     __metaclass__ = abc.ABCMeta
#     
#     def __init__(self, args):
# 	super(Parse, self).__init__(args)
# 
#     @abc.abstractmethod
#     def migrate(self):
#         """Migrate data to database"""
# 	pass


import datetime
import gzip
import json
import os
import pymongo
import sys
from collections import defaultdict
from edx_data_research.parsing.parse import Parse
'''
Loads tracking logs to mongodb

Tracking logs are generated daily. We will load all logs to a master
tracking_logs collection within our master database. From the master
tracking logs collection we extract course specific tracking logs.
Course specific tracking logs are loaded to a course specific database in
collection called tracking

Note, this script works with both decompressed (.log) and compressed (.log.gz) tracking logs

Note: use tracking as both the database_name and the collection_name

*Some errors occur when loading open assessments events
'''




ERROR_FILE_SUFFIX = "-errors"


# Path: edx_data_research/parsing/parse.py
# class Parse(Base):
#     __metaclass__ = abc.ABCMeta
#     
#     def __init__(self, args):
# 	super(Parse, self).__init__(args)
# 
#     @abc.abstractmethod
#     def migrate(self):
#         """Migrate data to database"""
# 	pass


# Path: edx_data_research/parsing/parse_tracking.py
import datetime
import gzip
import json
import os
import pymongo
import sys
from collections import defaultdict
from edx_data_research.parsing.parse import Parse

'''
Loads tracking logs to mongodb

Tracking logs are generated daily. We will load all logs to a master
tracking_logs collection within our master database. From the master
tracking logs collection we extract course specific tracking logs.
Course specific tracking logs are loaded to a course specific database in
collection called tracking

Note, this script works with both decompressed (.log) and compressed (.log.gz) tracking logs

Note: use tracking as both the database_name and the collection_name

*Some errors occur when loading open assessments events
'''




ERROR_FILE_SUFFIX = "-errors"


class Tracking(Parse):