Coder Social home page Coder Social logo

Comments (32)

tcgoetz avatar tcgoetz commented on July 17, 2024

MessageType.file_id messages should be handled before MessageType.monitoring_info which should create the file entries. file_id is the index into the file table.

If you run:
make TEST_GC_ID=24287393166 test_monitoring_file
what output do you get? This does an import on the single file in your log above with high debug level. I'm particularly interested in log messages of the form:

"Processed %d %s entries for %s"

from garmindb.

tcgoetz avatar tcgoetz commented on July 17, 2024

Please also check if your files table in garmin.db has an entry for id 24287393166.

from garmindb.

dalepharo avatar dalepharo commented on July 17, 2024

It seems the 'files' table is empty.

I gave that command a try, but it was looking for files in 2017_Monitoring (I have 2018_Monitoring), so i just copied the 2018 folder to a 2017 folder. this was the output:

root@DESKTOP-PEFVJD9:/home/dale/GarminDB# make TEST_GC_ID=24287393166 test_monitoring_file
python import_garmin.py -t -e --fit_input_file "/root/HealthData/FitFiles/2018_Monitoring/24287393166.fit" --sqlite /root/HealthData/DBs ||
python import_garmin.py -t -e --fit_input_file "/root/HealthData/FitFiles/2017_Monitoring/24287393166.fit" --sqlite /root/HealthData/DBs
INFO:import_garmin.py:Debug: True English units: True
INFO:/home/dale/GarminDB/FileProcessor.pyc:Reading file: /root/HealthData/FitFiles/2018_Monitoring/24287393166.fit
INFO:GarminDB.GarminDB:GarminDB: {'db_type': 'sqlite', 'db_path': '/root/HealthData/DBs'} debug: 0
DEBUG:HealthDB.DB:DB {'db_type': 'sqlite', 'db_path': '/root/HealthData/DBs'} debug 0
INFO:GarminDB.MonitoringDB:MonitoringDB: {'db_type': 'sqlite', 'db_path': '/root/HealthData/DBs'} debug: 0
INFO:GarminDB.ActivitiesDB:ActivitiesDB: {'db_type': 'sqlite', 'db_path': '/root/HealthData/DBs'} debug: 0
INFO:/home/dale/GarminDB/FitFileProcessor.pyc:Debug: True English units: True
DEBUG:Fit.File:Parsing File /root/HealthData/FitFiles/2018_Monitoring/24287393166.fit
DEBUG:Fit.File:Parsed record RecordHeader: Local definition message 0 (Compressed 0)
DEBUG:Fit.File: Definition [0]: DefinitionMessage: <MessageType.file_id: 0> 7 Little_Endian fields
DEBUG:Fit.File:Record 1: consumed 27 of 215 True
DEBUG:Fit.File:Parsed record RecordHeader: Local data message 0 (Compressed 0)
DEBUG:Fit.File: Data [0]: DataMessage: <MessageType.file_id: 0>: unknown_6(None (65535) [invalid]), product(2503), product(2503), time_created(2018-09-01 06:39:59 (904711200)), number(118), serial_number(3965499063), type(FileType.monitoring_b (32)), manufacturer(Manufacturer.Garmin (1)),
DEBUG:Fit.File:Parsed <MessageType.file_id: 0>
DEBUG:Fit.File:Record 2: consumed 45 of 215 True
DEBUG:Fit.File:Parsed record RecordHeader: Local definition message 1 (Compressed 0)
DEBUG:Fit.File: Definition [1]: DefinitionMessage: <MessageType.device_info: 23> 5 Little_Endian fields
DEBUG:Fit.File:Record 3: consumed 66 of 215 True
DEBUG:Fit.File:Parsed record RecordHeader: Local data message 1 (Compressed 0)
DEBUG:Fit.File: Data [1]: DataMessage: <MessageType.device_info: 23>: product(2503), software_version(3.3 (330)), timestamp(2018-09-01 06:39:59 (904711200)), product(2503), serial_number(3965499063), manufacturer(Manufacturer.Garmin (1)),
DEBUG:Fit.File:Parsed <MessageType.device_info: 23>
DEBUG:Fit.File:Record 4: consumed 81 of 215 True
DEBUG:Fit.File:Parsed record RecordHeader: Local definition message 2 (Compressed 0)
DEBUG:Fit.File: Definition [2]: DefinitionMessage: <MessageType.software: 35> 1 Little_Endian fields
DEBUG:Fit.File:Record 5: consumed 90 of 215 True
DEBUG:Fit.File:Parsed record RecordHeader: Local data message 2 (Compressed 0)
DEBUG:Fit.File: Data [2]: DataMessage: <MessageType.software: 35>: version(3.6 (360)),
DEBUG:Fit.File:Parsed <MessageType.software: 35>
DEBUG:Fit.File:Record 6: consumed 93 of 215 True
DEBUG:Fit.File:Parsed record RecordHeader: Local definition message 3 (Compressed 0)
DEBUG:Fit.File: Definition [3]: DefinitionMessage: <MessageType.monitoring_info: 103> 8 Little_Endian fields
DEBUG:Fit.File:Record 7: consumed 123 of 215 True
DEBUG:Fit.File:Parsed record RecordHeader: Local data message 3 (Compressed 0)
DEBUG:Fit.File: Data [3]: DataMessage: <MessageType.monitoring_info: 103>: resting_metabolic_rate(2447 kcal/day), unknown_7([7130, 7130]), cycles_to_calories([0.0677344808351263, 0.21336361463064785] ['kcal/cycle', 'kcal/cycle'] ([340, 1071])), timestamp(2018-09-01 06:39:59 (904711200)), local_timestamp(2018-09-01 06:40:00 (904718400)), unknown_8(1), cycles_to_distance([1.729, 2.5934] ['m/cycle', 'm/cycle'] ([8645, 12967])), activity_type([<ActivityType.walking: 6>, <ActivityType.running: 1>] ([6, 1])),
DEBUG:Fit.File:Parsed <MessageType.monitoring_info: 103>
DEBUG:Fit.File:Record 8: consumed 153 of 215 True
DEBUG:Fit.File:Parsed record RecordHeader: Local definition message 4 (Compressed 0)
DEBUG:Fit.File: Definition [4]: DefinitionMessage: <MessageType.monitoring: 55> 3 Little_Endian fields
DEBUG:Fit.File:Record 9: consumed 168 of 215 True
DEBUG:Fit.File:Parsed record RecordHeader: Local data message 4 (Compressed 0)
DEBUG:Fit.File: Data [4]: DataMessage: <MessageType.monitoring: 55>: timestamp(2018-09-01 06:39:59 (904711200)), unknown_38(0), unknown_37(0),
DEBUG:Fit.File:Parsed <MessageType.monitoring: 55>
DEBUG:Fit.File:Record 10: consumed 177 of 215 True
DEBUG:Fit.File:Parsed record RecordHeader: Local definition message 5 (Compressed 0)
DEBUG:Fit.File: Definition [5]: DefinitionMessage: <UnknownMessageType.unknown_211: 211> 3 Little_Endian fields
DEBUG:Fit.File:Record 11: consumed 192 of 215 True
DEBUG:Fit.File:Parsed record RecordHeader: Local data message 5 (Compressed 0)
DEBUG:Fit.File: Data [5]: DataMessage: <UnknownMessageType.unknown_211: 211>: timestamp(2018-09-01 06:39:59 (904711200)), unknown_0(52), unknown_1(52),
DEBUG:Fit.File:Parsed <UnknownMessageType.unknown_211: 211>
DEBUG:Fit.File:Record 12: consumed 199 of 215 True
DEBUG:Fit.File:Parsed record RecordHeader: Local data message 4 (Compressed 0)
DEBUG:Fit.File: Data [4]: DataMessage: <MessageType.monitoring: 55>: timestamp(2018-09-01 06:39:59 (904711200)), unknown_38(0), unknown_37(0),
DEBUG:Fit.File:Parsed <MessageType.monitoring: 55>
DEBUG:Fit.File:Record 13: consumed 208 of 215 True
DEBUG:Fit.File:Parsed record RecordHeader: Local data message 5 (Compressed 0)
DEBUG:Fit.File: Data [5]: DataMessage: <UnknownMessageType.unknown_211: 211>: timestamp(2018-09-01 06:39:59 (904711200)), unknown_0(52), unknown_1(52),
DEBUG:Fit.File:Parsed <UnknownMessageType.unknown_211: 211>
DEBUG:Fit.File:Record 14: consumed 215 of 215 True
DEBUG:Fit.File:File /root/HealthData/FitFiles/2018_Monitoring/24287393166.fit: 2018-09-01 06:39:59 -> 2018-09-01 06:39:59
INFO:/home/dale/GarminDB/FitFileProcessor.pyc:Importing /root/HealthData/FitFiles/2018_Monitoring/24287393166.fit (2018-09-01 06:39:59) [FileType.monitoring_b] with message types: [<MessageType.file_id: 0>, <MessageType.device_info: 23>, <MessageType.software: 35>, <MessageType.monitoring_info: 103>, <MessageType.monitoring: 55>, <UnknownMessageType.unknown_211: 211>]
DEBUG:/home/dale/GarminDB/FitFileProcessor.pyc:No entry handler for message type <MessageType.file_id: 0> (1) from /root/HealthData/FitFiles/2018_Monitoring/24287393166.fit: DataMessage: <MessageType.file_id: 0>: unknown_6(None (65535) [invalid]), product(2503), product(2503), time_created(2018-09-01 06:39:59 (904711200)), number(118), serial_number(3965499063), type(FileType.monitoring_b (32)), manufacturer(Manufacturer.Garmin (1)),
DEBUG:/home/dale/GarminDB/FitFileProcessor.pyc:Processed 1 <MessageType.file_id: 0> entries for /root/HealthData/FitFiles/2018_Monitoring/24287393166.fit
DEBUG:/home/dale/GarminDB/FitFileProcessor.pyc:No entry handler for message type <MessageType.device_info: 23> (1) from /root/HealthData/FitFiles/2018_Monitoring/24287393166.fit: DataMessage: <MessageType.device_info: 23>: product(2503), software_version(3.3 (330)), timestamp(2018-09-01 06:39:59 (904711200)), product(2503), serial_number(3965499063), manufacturer(Manufacturer.Garmin (1)),
DEBUG:/home/dale/GarminDB/FitFileProcessor.pyc:Processed 1 <MessageType.device_info: 23> entries for /root/HealthData/FitFiles/2018_Monitoring/24287393166.fit
DEBUG:/home/dale/GarminDB/FitFileProcessor.pyc:software message: {'version': 3.6}
DEBUG:/home/dale/GarminDB/FitFileProcessor.pyc:Processed 1 <MessageType.software: 35> entries for /root/HealthData/FitFiles/2018_Monitoring/24287393166.fit
Traceback (most recent call last):
File "import_garmin.py", line 301, in
main(sys.argv[1:])
File "import_garmin.py", line 287, in main
gfd.process_files(db_params_dict)
File "import_garmin.py", line 79, in process_files
fp.write_file(Fit.File(file_name, self.english_units))
File "/home/dale/GarminDB/FitFileProcessor.py", line 62, in write_file
self.write_message_types(fit_file, fit_file.message_types())
File "/home/dale/GarminDB/FitFileProcessor.py", line 57, in write_message_types
self.write_message_type(fit_file, message_type)
File "/home/dale/GarminDB/FitFileProcessor.py", line 44, in write_message_type
function(fit_file, message_type, messages)
File "/home/dale/GarminDB/FitFileProcessor.py", line 37, in write_generic
function(fit_file, message)
File "/home/dale/GarminDB/FitFileProcessor.py", line 332, in write_monitoring_info_entry
GarminDB.MonitoringInfo.find_or_create(self.garmin_mon_db, entry)
File "/home/dale/GarminDB/HealthDB/DB.py", line 231, in find_or_create
DB.commit(session)
File "/home/dale/GarminDB/HealthDB/DB.py", line 58, in commit
session.commit()
File "/usr/local/lib/python2.7/dist-packages/sqlalchemy/orm/session.py", line 943, in commit
self.transaction.commit()
File "/usr/local/lib/python2.7/dist-packages/sqlalchemy/orm/session.py", line 467, in commit
self._prepare_impl()
File "/usr/local/lib/python2.7/dist-packages/sqlalchemy/orm/session.py", line 447, in _prepare_impl
self.session.flush()
File "/usr/local/lib/python2.7/dist-packages/sqlalchemy/orm/session.py", line 2254, in flush
self._flush(objects)
File "/usr/local/lib/python2.7/dist-packages/sqlalchemy/orm/session.py", line 2380, in _flush
transaction.rollback(_capture_exception=True)
File "/usr/local/lib/python2.7/dist-packages/sqlalchemy/util/langhelpers.py", line 66, in exit
compat.reraise(exc_type, exc_value, exc_tb)
File "/usr/local/lib/python2.7/dist-packages/sqlalchemy/orm/session.py", line 2344, in _flush
flush_context.execute()
File "/usr/local/lib/python2.7/dist-packages/sqlalchemy/orm/unitofwork.py", line 391, in execute
rec.execute(self)
File "/usr/local/lib/python2.7/dist-packages/sqlalchemy/orm/unitofwork.py", line 556, in execute
uow
File "/usr/local/lib/python2.7/dist-packages/sqlalchemy/orm/persistence.py", line 181, in save_obj
mapper, table, insert)
File "/usr/local/lib/python2.7/dist-packages/sqlalchemy/orm/persistence.py", line 830, in _emit_insert_statements
execute(statement, multiparams)
File "/usr/local/lib/python2.7/dist-packages/sqlalchemy/engine/base.py", line 948, in execute
return meth(self, multiparams, params)
File "/usr/local/lib/python2.7/dist-packages/sqlalchemy/sql/elements.py", line 269, in _execute_on_connection
return connection._execute_clauseelement(self, multiparams, params)
File "/usr/local/lib/python2.7/dist-packages/sqlalchemy/engine/base.py", line 1060, in _execute_clauseelement
compiled_sql, distilled_params
File "/usr/local/lib/python2.7/dist-packages/sqlalchemy/engine/base.py", line 1200, in _execute_context
context)
File "/usr/local/lib/python2.7/dist-packages/sqlalchemy/engine/base.py", line 1413, in _handle_dbapi_exception
exc_info
File "/usr/local/lib/python2.7/dist-packages/sqlalchemy/util/compat.py", line 265, in raise_from_cause
reraise(type(exception), exception, tb=exc_tb, cause=cause)
File "/usr/local/lib/python2.7/dist-packages/sqlalchemy/engine/base.py", line 1193, in _execute_context
context)
File "/usr/local/lib/python2.7/dist-packages/sqlalchemy/engine/default.py", line 509, in do_execute
cursor.execute(statement, parameters)
sqlalchemy.exc.IntegrityError: (sqlite3.IntegrityError) NOT NULL constraint failed: monitoring_info.file_id [SQL: u'INSERT INTO monitoring_info (timestamp, file_id, activity_type, resting_metabolic_rate, cycles_to_distance, cycles_to_calories) VALUES (?, ?, ?, ?, ?, ?)'] [parameters: ('2018-09-01 06:40:00.000000', None, 'walking', 2447, 1.729, 0.0677344808351263)] (Background on this error at: http://sqlalche.me/e/gkpj)
INFO:import_garmin.py:Debug: True English units: True
INFO:/home/dale/GarminDB/FileProcessor.pyc:Reading file: /root/HealthData/FitFiles/2017_Monitoring/24287393166.fit
INFO:GarminDB.GarminDB:GarminDB: {'db_type': 'sqlite', 'db_path': '/root/HealthData/DBs'} debug: 0
DEBUG:HealthDB.DB:DB {'db_type': 'sqlite', 'db_path': '/root/HealthData/DBs'} debug 0
INFO:GarminDB.MonitoringDB:MonitoringDB: {'db_type': 'sqlite', 'db_path': '/root/HealthData/DBs'} debug: 0
INFO:GarminDB.ActivitiesDB:ActivitiesDB: {'db_type': 'sqlite', 'db_path': '/root/HealthData/DBs'} debug: 0
INFO:/home/dale/GarminDB/FitFileProcessor.pyc:Debug: True English units: True
DEBUG:Fit.File:Parsing File /root/HealthData/FitFiles/2017_Monitoring/24287393166.fit
DEBUG:Fit.File:Parsed record RecordHeader: Local definition message 0 (Compressed 0)
DEBUG:Fit.File: Definition [0]: DefinitionMessage: <MessageType.file_id: 0> 7 Little_Endian fields
DEBUG:Fit.File:Record 1: consumed 27 of 215 True
DEBUG:Fit.File:Parsed record RecordHeader: Local data message 0 (Compressed 0)
DEBUG:Fit.File: Data [0]: DataMessage: <MessageType.file_id: 0>: unknown_6(None (65535) [invalid]), product(2503), product(2503), time_created(2018-09-01 06:39:59 (904711200)), number(118), serial_number(3965499063), type(FileType.monitoring_b (32)), manufacturer(Manufacturer.Garmin (1)),
DEBUG:Fit.File:Parsed <MessageType.file_id: 0>
DEBUG:Fit.File:Record 2: consumed 45 of 215 True
DEBUG:Fit.File:Parsed record RecordHeader: Local definition message 1 (Compressed 0)
DEBUG:Fit.File: Definition [1]: DefinitionMessage: <MessageType.device_info: 23> 5 Little_Endian fields
DEBUG:Fit.File:Record 3: consumed 66 of 215 True
DEBUG:Fit.File:Parsed record RecordHeader: Local data message 1 (Compressed 0)
DEBUG:Fit.File: Data [1]: DataMessage: <MessageType.device_info: 23>: product(2503), software_version(3.3 (330)), timestamp(2018-09-01 06:39:59 (904711200)), product(2503), serial_number(3965499063), manufacturer(Manufacturer.Garmin (1)),
DEBUG:Fit.File:Parsed <MessageType.device_info: 23>
DEBUG:Fit.File:Record 4: consumed 81 of 215 True
DEBUG:Fit.File:Parsed record RecordHeader: Local definition message 2 (Compressed 0)
DEBUG:Fit.File: Definition [2]: DefinitionMessage: <MessageType.software: 35> 1 Little_Endian fields
DEBUG:Fit.File:Record 5: consumed 90 of 215 True
DEBUG:Fit.File:Parsed record RecordHeader: Local data message 2 (Compressed 0)
DEBUG:Fit.File: Data [2]: DataMessage: <MessageType.software: 35>: version(3.6 (360)),
DEBUG:Fit.File:Parsed <MessageType.software: 35>
DEBUG:Fit.File:Record 6: consumed 93 of 215 True
DEBUG:Fit.File:Parsed record RecordHeader: Local definition message 3 (Compressed 0)
DEBUG:Fit.File: Definition [3]: DefinitionMessage: <MessageType.monitoring_info: 103> 8 Little_Endian fields
DEBUG:Fit.File:Record 7: consumed 123 of 215 True
DEBUG:Fit.File:Parsed record RecordHeader: Local data message 3 (Compressed 0)
DEBUG:Fit.File: Data [3]: DataMessage: <MessageType.monitoring_info: 103>: resting_metabolic_rate(2447 kcal/day), unknown_7([7130, 7130]), cycles_to_calories([0.0677344808351263, 0.21336361463064785] ['kcal/cycle', 'kcal/cycle'] ([340, 1071])), timestamp(2018-09-01 06:39:59 (904711200)), local_timestamp(2018-09-01 06:40:00 (904718400)), unknown_8(1), cycles_to_distance([1.729, 2.5934] ['m/cycle', 'm/cycle'] ([8645, 12967])), activity_type([<ActivityType.walking: 6>, <ActivityType.running: 1>] ([6, 1])),
DEBUG:Fit.File:Parsed <MessageType.monitoring_info: 103>
DEBUG:Fit.File:Record 8: consumed 153 of 215 True
DEBUG:Fit.File:Parsed record RecordHeader: Local definition message 4 (Compressed 0)
DEBUG:Fit.File: Definition [4]: DefinitionMessage: <MessageType.monitoring: 55> 3 Little_Endian fields
DEBUG:Fit.File:Record 9: consumed 168 of 215 True
DEBUG:Fit.File:Parsed record RecordHeader: Local data message 4 (Compressed 0)
DEBUG:Fit.File: Data [4]: DataMessage: <MessageType.monitoring: 55>: timestamp(2018-09-01 06:39:59 (904711200)), unknown_38(0), unknown_37(0),
DEBUG:Fit.File:Parsed <MessageType.monitoring: 55>
DEBUG:Fit.File:Record 10: consumed 177 of 215 True
DEBUG:Fit.File:Parsed record RecordHeader: Local definition message 5 (Compressed 0)
DEBUG:Fit.File: Definition [5]: DefinitionMessage: <UnknownMessageType.unknown_211: 211> 3 Little_Endian fields
DEBUG:Fit.File:Record 11: consumed 192 of 215 True
DEBUG:Fit.File:Parsed record RecordHeader: Local data message 5 (Compressed 0)
DEBUG:Fit.File: Data [5]: DataMessage: <UnknownMessageType.unknown_211: 211>: timestamp(2018-09-01 06:39:59 (904711200)), unknown_0(52), unknown_1(52),
DEBUG:Fit.File:Parsed <UnknownMessageType.unknown_211: 211>
DEBUG:Fit.File:Record 12: consumed 199 of 215 True
DEBUG:Fit.File:Parsed record RecordHeader: Local data message 4 (Compressed 0)
DEBUG:Fit.File: Data [4]: DataMessage: <MessageType.monitoring: 55>: timestamp(2018-09-01 06:39:59 (904711200)), unknown_38(0), unknown_37(0),
DEBUG:Fit.File:Parsed <MessageType.monitoring: 55>
DEBUG:Fit.File:Record 13: consumed 208 of 215 True
DEBUG:Fit.File:Parsed record RecordHeader: Local data message 5 (Compressed 0)
DEBUG:Fit.File: Data [5]: DataMessage: <UnknownMessageType.unknown_211: 211>: timestamp(2018-09-01 06:39:59 (904711200)), unknown_0(52), unknown_1(52),
DEBUG:Fit.File:Parsed <UnknownMessageType.unknown_211: 211>
DEBUG:Fit.File:Record 14: consumed 215 of 215 True
DEBUG:Fit.File:File /root/HealthData/FitFiles/2017_Monitoring/24287393166.fit: 2018-09-01 06:39:59 -> 2018-09-01 06:39:59
INFO:/home/dale/GarminDB/FitFileProcessor.pyc:Importing /root/HealthData/FitFiles/2017_Monitoring/24287393166.fit (2018-09-01 06:39:59) [FileType.monitoring_b] with message types: [<MessageType.file_id: 0>, <MessageType.device_info: 23>, <MessageType.software: 35>, <MessageType.monitoring_info: 103>, <MessageType.monitoring: 55>, <UnknownMessageType.unknown_211: 211>]
DEBUG:/home/dale/GarminDB/FitFileProcessor.pyc:No entry handler for message type <MessageType.file_id: 0> (1) from /root/HealthData/FitFiles/2017_Monitoring/24287393166.fit: DataMessage: <MessageType.file_id: 0>: unknown_6(None (65535) [invalid]), product(2503), product(2503), time_created(2018-09-01 06:39:59 (904711200)), number(118), serial_number(3965499063), type(FileType.monitoring_b (32)), manufacturer(Manufacturer.Garmin (1)),
DEBUG:/home/dale/GarminDB/FitFileProcessor.pyc:Processed 1 <MessageType.file_id: 0> entries for /root/HealthData/FitFiles/2017_Monitoring/24287393166.fit
DEBUG:/home/dale/GarminDB/FitFileProcessor.pyc:No entry handler for message type <MessageType.device_info: 23> (1) from /root/HealthData/FitFiles/2017_Monitoring/24287393166.fit: DataMessage: <MessageType.device_info: 23>: product(2503), software_version(3.3 (330)), timestamp(2018-09-01 06:39:59 (904711200)), product(2503), serial_number(3965499063), manufacturer(Manufacturer.Garmin (1)),
DEBUG:/home/dale/GarminDB/FitFileProcessor.pyc:Processed 1 <MessageType.device_info: 23> entries for /root/HealthData/FitFiles/2017_Monitoring/24287393166.fit
DEBUG:/home/dale/GarminDB/FitFileProcessor.pyc:software message: {'version': 3.6}
DEBUG:/home/dale/GarminDB/FitFileProcessor.pyc:Processed 1 <MessageType.software: 35> entries for /root/HealthData/FitFiles/2017_Monitoring/24287393166.fit
Traceback (most recent call last):
File "import_garmin.py", line 301, in
main(sys.argv[1:])
File "import_garmin.py", line 287, in main
gfd.process_files(db_params_dict)
File "import_garmin.py", line 79, in process_files
fp.write_file(Fit.File(file_name, self.english_units))
File "/home/dale/GarminDB/FitFileProcessor.py", line 62, in write_file
self.write_message_types(fit_file, fit_file.message_types())
File "/home/dale/GarminDB/FitFileProcessor.py", line 57, in write_message_types
self.write_message_type(fit_file, message_type)
File "/home/dale/GarminDB/FitFileProcessor.py", line 44, in write_message_type
function(fit_file, message_type, messages)
File "/home/dale/GarminDB/FitFileProcessor.py", line 37, in write_generic
function(fit_file, message)
File "/home/dale/GarminDB/FitFileProcessor.py", line 332, in write_monitoring_info_entry
GarminDB.MonitoringInfo.find_or_create(self.garmin_mon_db, entry)
File "/home/dale/GarminDB/HealthDB/DB.py", line 231, in find_or_create
DB.commit(session)
File "/home/dale/GarminDB/HealthDB/DB.py", line 58, in commit
session.commit()
File "/usr/local/lib/python2.7/dist-packages/sqlalchemy/orm/session.py", line 943, in commit
self.transaction.commit()
File "/usr/local/lib/python2.7/dist-packages/sqlalchemy/orm/session.py", line 467, in commit
self._prepare_impl()
File "/usr/local/lib/python2.7/dist-packages/sqlalchemy/orm/session.py", line 447, in _prepare_impl
self.session.flush()
File "/usr/local/lib/python2.7/dist-packages/sqlalchemy/orm/session.py", line 2254, in flush
self._flush(objects)
File "/usr/local/lib/python2.7/dist-packages/sqlalchemy/orm/session.py", line 2380, in _flush
transaction.rollback(_capture_exception=True)
File "/usr/local/lib/python2.7/dist-packages/sqlalchemy/util/langhelpers.py", line 66, in exit
compat.reraise(exc_type, exc_value, exc_tb)
File "/usr/local/lib/python2.7/dist-packages/sqlalchemy/orm/session.py", line 2344, in _flush
flush_context.execute()
File "/usr/local/lib/python2.7/dist-packages/sqlalchemy/orm/unitofwork.py", line 391, in execute
rec.execute(self)
File "/usr/local/lib/python2.7/dist-packages/sqlalchemy/orm/unitofwork.py", line 556, in execute
uow
File "/usr/local/lib/python2.7/dist-packages/sqlalchemy/orm/persistence.py", line 181, in save_obj
mapper, table, insert)
File "/usr/local/lib/python2.7/dist-packages/sqlalchemy/orm/persistence.py", line 830, in _emit_insert_statements
execute(statement, multiparams)
File "/usr/local/lib/python2.7/dist-packages/sqlalchemy/engine/base.py", line 948, in execute
return meth(self, multiparams, params)
File "/usr/local/lib/python2.7/dist-packages/sqlalchemy/sql/elements.py", line 269, in _execute_on_connection
return connection._execute_clauseelement(self, multiparams, params)
File "/usr/local/lib/python2.7/dist-packages/sqlalchemy/engine/base.py", line 1060, in _execute_clauseelement
compiled_sql, distilled_params
File "/usr/local/lib/python2.7/dist-packages/sqlalchemy/engine/base.py", line 1200, in _execute_context
context)
File "/usr/local/lib/python2.7/dist-packages/sqlalchemy/engine/base.py", line 1413, in _handle_dbapi_exception
exc_info
File "/usr/local/lib/python2.7/dist-packages/sqlalchemy/util/compat.py", line 265, in raise_from_cause
reraise(type(exception), exception, tb=exc_tb, cause=cause)
File "/usr/local/lib/python2.7/dist-packages/sqlalchemy/engine/base.py", line 1193, in _execute_context
context)
File "/usr/local/lib/python2.7/dist-packages/sqlalchemy/engine/default.py", line 509, in do_execute
cursor.execute(statement, parameters)
sqlalchemy.exc.IntegrityError: (sqlite3.IntegrityError) NOT NULL constraint failed: monitoring_info.file_id [SQL: u'INSERT INTO monitoring_info (timestamp, file_id, activity_type, resting_metabolic_rate, cycles_to_distance, cycles_to_calories) VALUES (?, ?, ?, ?, ?, ?)'] [parameters: ('2018-09-01 06:40:00.000000', None, 'walking', 2447, 1.729, 0.0677344808351263)] (Background on this error at: http://sqlalche.me/e/gkpj)
make: *** [test_monitoring_file] Error 1

from garmindb.

tcgoetz avatar tcgoetz commented on July 17, 2024

Your getting a handler not found for the file_id message:
DEBUG:/home/dale/GarminDB/FitFileProcessor.pyc:No entry handler for message type <MessageType.file_id: 0> (1) from /root/HealthData/FitFiles/2018_Monitoring/24287393166.fit: DataMessage: <MessageType.file_id: 0>: unknown_6(None (65535) [invalid]), product(2503), product(2503), time_created(2018-09-01 06:39:59 (904711200)), number(118), serial_number(3965499063), type(FileType.monitoring_b (32)), manufacturer(Manufacturer.Garmin (1)),

but you should have a function (handler) named write_file_id_entry in FitFileProcessor.py. Doy you?

The issue may be that your device is not known product(2503). What is the name of your device?

from garmindb.

dalepharo avatar dalepharo commented on July 17, 2024

It's a forerunner 35 watch. i also have an index scale, but that data gets imported ok.
here's a link to the fit file generated by this device: https://we.tl/t-IDHPoZzz91 . i've verified this happens with all of the fit files and haven't been able to get a web service to spit out a csv yet.

this is the write_file_id_entry handler i have:

def write_file_id_entry(self, fit_file, message):
parsed_message = message.to_dict()
if parsed_message['serial_number'] is not None:
device = {
'serial_number' : parsed_message['serial_number'],
'timestamp' : parsed_message['time_created'],
'manufacturer' : parsed_message['manufacturer'],
'product' : parsed_message['product'].name,
}
GarminDB.Device.find_or_create(self.garmin_db, device)
file = {
'name' : fit_file.filename,
'type' : parsed_message['type'],
'serial_number' : parsed_message['serial_number'],
}
GarminDB.File.find_or_create(self.garmin_db, file)

from garmindb.

tcgoetz avatar tcgoetz commented on July 17, 2024

Do a make update and try again. Your file works for me now.

from garmindb.

dalepharo avatar dalepharo commented on July 17, 2024

ok, importing to db is working great now for monitoring.
i'm going to try figure out downloads/imports for other weight metrics (bmi, fat %, bone mass, etc), but need to do some reading on python and garmin's api (it's a bit above my paygrade lol)
thanks for a great project!

from garmindb.

blaketwist avatar blaketwist commented on July 17, 2024

I know this is closed, but I'm having the same error so I thought I write here before starting a duplicated issue.

I succsesfully downloaded all data from garmin connect but got an error when loading the data into sqlite.

INFO:/Users/ninjarocketman/garminDB/GarminDB/FitFileProcessor.pyc:Importing /Users/ninjarocketman/HealthData/FitFiles/2018_Monitoring//18950741195.fit (2018-03-23 07:32:59) [FileType.monitoring_b] with message types: [<MessageType.file_id: 0>, <MessageType.device_info: 23>, <MessageType.software: 35>, <MessageType.monitoring_info: 103>, <MessageType.monitoring: 55>, <UnknownMessageType.unknown_211: 211>, <MessageType.stress_level: 227>, <MessageType.unknown_233: 233>]
Traceback (most recent call last):
  File "import_garmin.py", line 301, in <module>
    main(sys.argv[1:])
  File "import_garmin.py", line 287, in main
    gfd.process_files(db_params_dict)
  File "import_garmin.py", line 79, in process_files
    fp.write_file(Fit.File(file_name, self.english_units))
  File "/Users/ninjarocketman/garminDB/GarminDB/FitFileProcessor.py", line 67, in write_file
    self.write_message_types(fit_file, fit_file.message_types())
  File "/Users/ninjarocketman/garminDB/GarminDB/FitFileProcessor.py", line 59, in write_message_types
    self.write_message_type(fit_file, message_type)
  File "/Users/ninjarocketman/garminDB/GarminDB/FitFileProcessor.py", line 46, in write_message_type
    function(fit_file, message_type, messages)
  File "/Users/ninjarocketman/garminDB/GarminDB/FitFileProcessor.py", line 38, in write_generic
    function(fit_file, message)
  File "/Users/ninjarocketman/garminDB/GarminDB/FitFileProcessor.py", line 340, in write_monitoring_info_entry
    GarminDB.MonitoringInfo.find_or_create(self.garmin_mon_db, entry)
  File "/Users/ninjarocketman/garminDB/GarminDB/HealthDB/DB.py", line 231, in find_or_create
    DB.commit(session)
  File "/Users/ninjarocketman/garminDB/GarminDB/HealthDB/DB.py", line 58, in commit
    session.commit()
  File "/usr/local/lib/python2.7/site-packages/sqlalchemy/orm/session.py", line 943, in commit
    self.transaction.commit()
  File "/usr/local/lib/python2.7/site-packages/sqlalchemy/orm/session.py", line 467, in commit
    self._prepare_impl()
  File "/usr/local/lib/python2.7/site-packages/sqlalchemy/orm/session.py", line 447, in _prepare_impl
    self.session.flush()
  File "/usr/local/lib/python2.7/site-packages/sqlalchemy/orm/session.py", line 2254, in flush
    self._flush(objects)
  File "/usr/local/lib/python2.7/site-packages/sqlalchemy/orm/session.py", line 2381, in _flush
    transaction.rollback(_capture_exception=True)
  File "/usr/local/lib/python2.7/site-packages/sqlalchemy/util/langhelpers.py", line 66, in __exit__
    compat.reraise(exc_type, exc_value, exc_tb)
  File "/usr/local/lib/python2.7/site-packages/sqlalchemy/orm/session.py", line 2345, in _flush
    flush_context.execute()
  File "/usr/local/lib/python2.7/site-packages/sqlalchemy/orm/unitofwork.py", line 395, in execute
    rec.execute(self)
  File "/usr/local/lib/python2.7/site-packages/sqlalchemy/orm/unitofwork.py", line 560, in execute
    uow
  File "/usr/local/lib/python2.7/site-packages/sqlalchemy/orm/persistence.py", line 181, in save_obj
    mapper, table, insert)
  File "/usr/local/lib/python2.7/site-packages/sqlalchemy/orm/persistence.py", line 830, in _emit_insert_statements
    execute(statement, multiparams)
  File "/usr/local/lib/python2.7/site-packages/sqlalchemy/engine/base.py", line 948, in execute
    return meth(self, multiparams, params)
  File "/usr/local/lib/python2.7/site-packages/sqlalchemy/sql/elements.py", line 269, in _execute_on_connection
    return connection._execute_clauseelement(self, multiparams, params)
  File "/usr/local/lib/python2.7/site-packages/sqlalchemy/engine/base.py", line 1060, in _execute_clauseelement
    compiled_sql, distilled_params
  File "/usr/local/lib/python2.7/site-packages/sqlalchemy/engine/base.py", line 1200, in _execute_context
    context)
  File "/usr/local/lib/python2.7/site-packages/sqlalchemy/engine/base.py", line 1413, in _handle_dbapi_exception
    exc_info
  File "/usr/local/lib/python2.7/site-packages/sqlalchemy/util/compat.py", line 265, in raise_from_cause
    reraise(type(exception), exception, tb=exc_tb, cause=cause)
  File "/usr/local/lib/python2.7/site-packages/sqlalchemy/engine/base.py", line 1193, in _execute_context
    context)
  File "/usr/local/lib/python2.7/site-packages/sqlalchemy/engine/default.py", line 509, in do_execute
    cursor.execute(statement, parameters)
sqlalchemy.exc.IntegrityError: (sqlite3.IntegrityError) NOT NULL constraint failed: monitoring_info.file_id [SQL: u'INSERT INTO monitoring_info (timestamp, file_id, activity_type, resting_metabolic_rate, cycles_to_distance, cycles_to_calories) VALUES (?, ?, ?, ?, ?, ?)'] [parameters: ('2018-03-23 07:33:00.000000', None, 'walking', 1645, 1.4952, 0.039644593194676864)] (Background on this error at: http://sqlalche.me/e/gkpj)
make: *** [import_monitoring] Error 1

When I remove the affected .fit file, it runs into the same error for the next one.
I checked out the provided link and guess it's about VALUES (?, ?, ?, ?, ?, ?). But not sure.

Also, when I did the initial make run, I got this error, but the script proceeded and downloaded all files, so I don't know if it's related.

python download_garmin.py --sqlite /Users/ninjarocketman/HealthData/DBs -u username -p password -r "/Users/ninjarocketman/HealthData/RHR"
INFO:root:login: ninjarocketman (e749adb4-6303-43e6-ba54-6729cbce3bc8) english units: False
INFO:root:get_rhr
INFO:root:get_rhr_chunk: 2018-10-25 - 2018-11-24
INFO:root:get_rhr_chunk: 2018-09-25 - 2018-10-25
INFO:root:get_rhr_chunk: 2018-08-26 - 2018-09-25
INFO:root:get_rhr_chunk: 2018-07-27 - 2018-08-26
INFO:root:get_rhr_chunk: 2018-06-27 - 2018-07-27
INFO:root:get_rhr_chunk: 2018-05-28 - 2018-06-27
INFO:root:get_rhr_chunk: 2018-04-28 - 2018-05-28
INFO:root:get_rhr_chunk: 2018-03-29 - 2018-04-28
INFO:root:get_rhr_chunk: 2018-02-27 - 2018-03-29
INFO:root:get_rhr_chunk: 2018-01-28 - 2018-02-27
INFO:root:get_rhr_chunk: 2017-12-29 - 2018-01-28
INFO:root:get_rhr_chunk: 2017-11-29 - 2017-12-29
ERROR:root:get_rhr_chunk: unexpected format - {u'allMetrics': {u'metricsMap': {}}, u'groupedMetrics': None, u'statisticsStartDate': u'2017-11-29', u'statisticsEndDate': u'2017-12-29', u'userProfileId': 66807256}

I also tried running make TEST_GC_ID=18950741195 test_monitoring_file, and got:

➜  GarminDB git:(master) make TEST_GC_ID=18950741195 test_monitoring_file
Makefile:208: warning: overriding commands for target `test_import_json_activities'
Makefile:199: warning: ignoring old commands for target `test_import_json_activities'
make: *** No rule to make target `test_monitoring_file'.  Stop.

I am running on the current version and did a make update. Still the same error.

Any tips on how to go proceed with that?

from garmindb.

tcgoetz avatar tcgoetz commented on July 17, 2024

The immediate issue is that a file_id entry was not found when it went to write a monitoring info message to the DB.

[SQL: u'INSERT INTO monitoring_info (timestamp, file_id, activity_type, resting_metabolic_rate, cycles_to_distance, cycles_to_calories) VALUES (?, ?, ?, ?, ?, ?)'] [parameters: ('2018-03-23 07:33:00.000000', None, 'walking', 1645, 1.4952, 0.039644593194676864)]

In the above log, file_id is None which is not allowed. file_id should have been filled in by looking up the filename in the file table. The entry for this file should have been added to the file table when the file_id message was processed.

from garmindb.

tcgoetz avatar tcgoetz commented on July 17, 2024

The make command has changed for a test import, try make TEST_GC_ID=18950741195 test_import_monitoring .

from garmindb.

tcgoetz avatar tcgoetz commented on July 17, 2024

Once you get the test import working, I expect to see a lot more logging. I'm looking for a reason for the file_id message to have failed to import.

def write_file_id_entry(self, fit_file, message):

So looking for a log message with write_file_id_entry in it.

Just some guesses:

  • An unrecognized device. What is your device?
  • A manufacturer other than Garmin?
  • No serial number?

Also, do you mind sharing the file with me so I can debug it?

from garmindb.

blaketwist avatar blaketwist commented on July 17, 2024

Hi Tom

Thank you for the quick reply.
I have a Garmin vívosport with a serial number on the device. How do I check if it's read by the scripts?

make TEST_GC_ID=18950741195 test_import_monitoring ran after I copied the file to the Downloads directory. The output is:

➜  GarminDB git:(master) make TEST_GC_ID=18950741195 test_import_monitoring
Makefile:208: warning: overriding commands for target `test_import_json_activities'
Makefile:199: warning: ignoring old commands for target `test_import_json_activities'
#python import_garmin.py -t1 -e --fit_input_file "/Users/ninjarocketman/HealthData/FitFiles/2018_Monitoring/18950741195.fit" --sqlite /Users/ninjarocketman/HealthData/DBs
python import_garmin.py -t1 -e --fit_input_file "/Users/ninjarocketman/Downloads/18950741195.fit" --sqlite /var/folders/n0/80c7lp9917l24k1j3d5sd3gw0000gn/T/
INFO:import_garmin.py:Debug: 1 English units: True
INFO:/Users/ninjarocketman/garminDB/GarminDB/FileProcessor.pyc:Reading file: /Users/ninjarocketman/Downloads/18950741195.fit
INFO:GarminDB.GarminDB:GarminDB: {'db_type': 'sqlite', 'db_path': '/var/folders/n0/80c7lp9917l24k1j3d5sd3gw0000gn/T/'} debug: 0
DEBUG:HealthDB.DB:DB {'db_type': 'sqlite', 'db_path': '/var/folders/n0/80c7lp9917l24k1j3d5sd3gw0000gn/T/'} debug 0
INFO:GarminDB.MonitoringDB:MonitoringDB: {'db_type': 'sqlite', 'db_path': '/var/folders/n0/80c7lp9917l24k1j3d5sd3gw0000gn/T/'} debug: 0
INFO:GarminDB.ActivitiesDB:ActivitiesDB: {'db_type': 'sqlite', 'db_path': '/var/folders/n0/80c7lp9917l24k1j3d5sd3gw0000gn/T/'} debug: 0
INFO:/Users/ninjarocketman/garminDB/GarminDB/FitFileProcessor.pyc:Debug: 1 English units: True
DEBUG:Fit.File:Parsing File /Users/ninjarocketman/Downloads/18950741195.fit
DEBUG:Fit.File:Parsed record RecordHeader: Local definition message 0 (Compressed 0)
DEBUG:Fit.File:  Definition [0]: DefinitionMessage: <MessageType.file_id: 0> 7 Little_Endian fields
DEBUG:Fit.File:Record 1: consumed 27 of 406 True
DEBUG:Fit.File:Parsed record RecordHeader: Local data message 0 (Compressed 0)
DEBUG:Fit.File:  Data [0]: DataMessage: <MessageType.file_id: 0>: unknown_6(None (65535) [invalid]), product(2623), number(177), time_created(2018-03-23 07:32:59 (890721180)), serial_number(3961162276), type(FileType.monitoring_b (32)), manufacturer(Manufacturer.Garmin (1)),
DEBUG:Fit.File:Parsed <MessageType.file_id: 0>
DEBUG:Fit.File:Record 2: consumed 45 of 406 True
DEBUG:Fit.File:Parsed record RecordHeader: Local definition message 1 (Compressed 0)
DEBUG:Fit.File:  Definition [1]: DefinitionMessage: <MessageType.device_info: 23> 5 Little_Endian fields
DEBUG:Fit.File:Record 3: consumed 66 of 406 True
DEBUG:Fit.File:Parsed record RecordHeader: Local data message 1 (Compressed 0)
DEBUG:Fit.File:  Data [1]: DataMessage: <MessageType.device_info: 23>: timestamp(2018-03-23 07:32:59 (890721180)), product(2623), serial_number(3961162276), software_version(2.9 (290)), manufacturer(Manufacturer.Garmin (1)),
DEBUG:Fit.File:Parsed <MessageType.device_info: 23>
DEBUG:Fit.File:Record 4: consumed 81 of 406 True
DEBUG:Fit.File:Parsed record RecordHeader: Local definition message 2 (Compressed 0)
DEBUG:Fit.File:  Definition [2]: DefinitionMessage: <MessageType.software: 35> 1 Little_Endian fields
DEBUG:Fit.File:Record 5: consumed 90 of 406 True
DEBUG:Fit.File:Parsed record RecordHeader: Local data message 2 (Compressed 0)
DEBUG:Fit.File:  Data [2]: DataMessage: <MessageType.software: 35>: version(3.9 (390)),
DEBUG:Fit.File:Parsed <MessageType.software: 35>
DEBUG:Fit.File:Record 6: consumed 93 of 406 True
DEBUG:Fit.File:Parsed record RecordHeader: Local definition message 3 (Compressed 0)
DEBUG:Fit.File:  Definition [3]: DefinitionMessage: <MessageType.monitoring_info: 103> 8 Little_Endian fields
DEBUG:Fit.File:Record 7: consumed 123 of 406 True
DEBUG:Fit.File:Parsed record RecordHeader: Local data message 3 (Compressed 0)
DEBUG:Fit.File:  Data [3]: DataMessage: <MessageType.monitoring_info: 103>: resting_metabolic_rate(1645 kcal/day), unknown_7([10000, 7500]), cycles_to_calories([0.039644593194676864, 0.12491035142242408] ['kcal/cycle', 'kcal/cycle'] ([199, 627])), timestamp(2018-03-23 07:32:59 (890721180)), local_timestamp(2018-03-23 07:33:00 (890724780)), unknown_8(1), cycles_to_distance([1.4952, 2.2428] ['m/cycle', 'm/cycle'] ([7476, 11214])), activity_type([<ActivityType.walking: 6>, <ActivityType.running: 1>] ([6, 1])),
DEBUG:Fit.File:Parsed <MessageType.monitoring_info: 103>
DEBUG:Fit.File:Record 8: consumed 153 of 406 True
DEBUG:Fit.File:Parsed record RecordHeader: Local definition message 4 (Compressed 0)
DEBUG:Fit.File:  Definition [4]: DefinitionMessage: <MessageType.monitoring: 55> 7 Little_Endian fields
DEBUG:Fit.File:Record 9: consumed 180 of 406 True
DEBUG:Fit.File:Parsed record RecordHeader: Local data message 4 (Compressed 0)
DEBUG:Fit.File:  Data [4]: DataMessage: <MessageType.monitoring: 55>: distance(55672.5721785 ft (16969)), active_calories(12 kcal), timestamp(2018-03-23 07:32:59 (890721180)), cum_active_time(00:11:00 (660000)), steps(227.0 steps), duration(07:33:00 (453)), activity_type(ActivityType.walking (6)),
DEBUG:Fit.File:Parsed <MessageType.monitoring: 55>
DEBUG:Fit.File:Record 10: consumed 202 of 406 True
DEBUG:Fit.File:Parsed record RecordHeader: Local definition message 5 (Compressed 0)
DEBUG:Fit.File:  Definition [5]: DefinitionMessage: <MessageType.monitoring: 55> 3 Little_Endian fields
DEBUG:Fit.File:Record 11: consumed 217 of 406 True
DEBUG:Fit.File:Parsed record RecordHeader: Local data message 5 (Compressed 0)
DEBUG:Fit.File:  Data [5]: DataMessage: <MessageType.monitoring: 55>: timestamp(2018-03-23 07:32:59 (890721180)), cum_ascent(0.0 ft), cum_descent(0.0 ft),
DEBUG:Fit.File:Parsed <MessageType.monitoring: 55>
DEBUG:Fit.File:Record 12: consumed 230 of 406 True
DEBUG:Fit.File:Parsed record RecordHeader: Local definition message 6 (Compressed 0)
DEBUG:Fit.File:  Definition [6]: DefinitionMessage: <MessageType.monitoring: 55> 3 Little_Endian fields
DEBUG:Fit.File:Record 13: consumed 245 of 406 True
DEBUG:Fit.File:Parsed record RecordHeader: Local data message 6 (Compressed 0)
DEBUG:Fit.File:  Data [6]: DataMessage: <MessageType.monitoring: 55>: timestamp(2018-03-23 07:32:59 (890721180)), unknown_38(0), unknown_37(0),
DEBUG:Fit.File:Parsed <MessageType.monitoring: 55>
DEBUG:Fit.File:Record 14: consumed 254 of 406 True
DEBUG:Fit.File:Parsed record RecordHeader: Local definition message 7 (Compressed 0)
DEBUG:Fit.File:  Definition [7]: DefinitionMessage: <UnknownMessageType.unknown_211: 211> 3 Little_Endian fields
DEBUG:Fit.File:Record 15: consumed 269 of 406 True
DEBUG:Fit.File:Parsed record RecordHeader: Local data message 7 (Compressed 0)
DEBUG:Fit.File:  Data [7]: DataMessage: <UnknownMessageType.unknown_211: 211>: timestamp(2018-03-23 07:32:59 (890721180)), unknown_0(51), unknown_1(57),
DEBUG:Fit.File:Parsed <UnknownMessageType.unknown_211: 211>
DEBUG:Fit.File:Record 16: consumed 276 of 406 True
DEBUG:Fit.File:Parsed record RecordHeader: Local definition message 0 (Compressed 0)
DEBUG:Fit.File:  Definition [0]: DefinitionMessage: <MessageType.stress_level: 227> 5 Little_Endian fields
DEBUG:Fit.File:Record 17: consumed 297 of 406 True
DEBUG:Fit.File:Parsed record RecordHeader: Local data message 0 (Compressed 0)
DEBUG:Fit.File:  Data [0]: DataMessage: <MessageType.stress_level: 227>: stress_level_time(2018-03-23 06:33:00 (890721180)), unknown_4(1), stress_level_value(-2), unknown_2(102), unknown_3(48),
DEBUG:Fit.File:Parsed <MessageType.stress_level: 227>
DEBUG:Fit.File:Record 18: consumed 307 of 406 True
DEBUG:Fit.File:Parsed record RecordHeader: Local definition message 1 (Compressed 0)
DEBUG:Fit.File:  Definition [1]: DefinitionMessage: <MessageType.monitoring: 55> 2 Little_Endian fields
DEBUG:Fit.File:Record 19: consumed 319 of 406 True
DEBUG:Fit.File:Parsed record RecordHeader: Local data message 1 (Compressed 0)
DEBUG:Fit.File:  Data [1]: DataMessage: <MessageType.monitoring: 55>: heart_rate(77 bpm), timestamp_16(21464 s),
DEBUG:Fit.File:Parsed <MessageType.monitoring: 55>
DEBUG:Fit.File:Record 20: consumed 323 of 406 True
DEBUG:Fit.File:Parsed record RecordHeader: Local definition message 2 (Compressed 0)
DEBUG:Fit.File:  Definition [2]: DefinitionMessage: <MessageType.unknown_233: 233> 1 Little_Endian fields
DEBUG:Fit.File:Record 21: consumed 332 of 406 True
DEBUG:Fit.File:Parsed record RecordHeader: Local data message 2 (Compressed 0)
DEBUG:Fit.File:  Data [2]: DataMessage: <MessageType.unknown_233: 233>: unknown_2(P
                                                                                    ([80, 12, 232, 224])),
DEBUG:Fit.File:Parsed <MessageType.unknown_233: 233>
DEBUG:Fit.File:Record 22: consumed 337 of 406 True
DEBUG:Fit.File:Parsed record RecordHeader: Local definition message 3 (Compressed 0)
DEBUG:Fit.File:  Definition [3]: DefinitionMessage: <MessageType.monitoring: 55> 2 Little_Endian fields
DEBUG:Fit.File:Record 23: consumed 349 of 406 True
DEBUG:Fit.File:Parsed record RecordHeader: Local data message 3 (Compressed 0)
DEBUG:Fit.File:  Data [3]: DataMessage: <MessageType.monitoring: 55>: timestamp(2018-03-23 07:33:59 (890721240)), intensity(4), activity_type(ActivityType.stop_disable (8)),
DEBUG:Fit.File:Parsed <MessageType.monitoring: 55>
DEBUG:Fit.File:Record 24: consumed 355 of 406 True
DEBUG:Fit.File:Parsed record RecordHeader: Local data message 4 (Compressed 0)
DEBUG:Fit.File:  Data [4]: DataMessage: <MessageType.monitoring: 55>: distance(55672.5721785 ft (16969)), active_calories(12 kcal), timestamp(2018-03-23 07:33:59 (890721240)), cum_active_time(00:11:00 (660000)), steps(227.0 steps), duration(07:34:00 (454)), activity_type(ActivityType.walking (6)),
DEBUG:Fit.File:Parsed <MessageType.monitoring: 55>
DEBUG:Fit.File:Record 25: consumed 377 of 406 True
DEBUG:Fit.File:Parsed record RecordHeader: Local data message 5 (Compressed 0)
DEBUG:Fit.File:  Data [5]: DataMessage: <MessageType.monitoring: 55>: timestamp(2018-03-23 07:33:59 (890721240)), cum_ascent(0.0 ft), cum_descent(0.0 ft),
DEBUG:Fit.File:Parsed <MessageType.monitoring: 55>
DEBUG:Fit.File:Record 26: consumed 390 of 406 True
DEBUG:Fit.File:Parsed record RecordHeader: Local data message 6 (Compressed 0)
DEBUG:Fit.File:  Data [6]: DataMessage: <MessageType.monitoring: 55>: timestamp(2018-03-23 07:33:59 (890721240)), unknown_38(0), unknown_37(0),
DEBUG:Fit.File:Parsed <MessageType.monitoring: 55>
DEBUG:Fit.File:Record 27: consumed 399 of 406 True
DEBUG:Fit.File:Parsed record RecordHeader: Local data message 7 (Compressed 0)
DEBUG:Fit.File:  Data [7]: DataMessage: <UnknownMessageType.unknown_211: 211>: timestamp(2018-03-23 07:33:59 (890721240)), unknown_0(51), unknown_1(57),
DEBUG:Fit.File:Parsed <UnknownMessageType.unknown_211: 211>
DEBUG:Fit.File:Record 28: consumed 406 of 406 True
DEBUG:Fit.File:File /Users/ninjarocketman/Downloads/18950741195.fit: 2018-03-23 07:32:59 -> 2018-03-23 07:33:59
INFO:/Users/ninjarocketman/garminDB/GarminDB/FitFileProcessor.pyc:Importing /Users/ninjarocketman/Downloads/18950741195.fit (2018-03-23 07:32:59) [FileType.monitoring_b] with message types: [<MessageType.file_id: 0>, <MessageType.device_info: 23>, <MessageType.software: 35>, <MessageType.monitoring_info: 103>, <MessageType.monitoring: 55>, <UnknownMessageType.unknown_211: 211>, <MessageType.stress_level: 227>, <MessageType.unknown_233: 233>]
DEBUG:/Users/ninjarocketman/garminDB/GarminDB/FitFileProcessor.pyc:No entry handler write_file_id_entry for message type <MessageType.file_id: 0> (1) from /Users/ninjarocketman/Downloads/18950741195.fit: DataMessage: <MessageType.file_id: 0>: unknown_6(None (65535) [invalid]), product(2623), number(177), time_created(2018-03-23 07:32:59 (890721180)), serial_number(3961162276), type(FileType.monitoring_b (32)), manufacturer(Manufacturer.Garmin (1)),
DEBUG:/Users/ninjarocketman/garminDB/GarminDB/FitFileProcessor.pyc:Processed 1 <MessageType.file_id: 0> entries for /Users/ninjarocketman/Downloads/18950741195.fit
DEBUG:/Users/ninjarocketman/garminDB/GarminDB/FitFileProcessor.pyc:No entry handler write_device_info_entry for message type <MessageType.device_info: 23> (1) from /Users/ninjarocketman/Downloads/18950741195.fit: DataMessage: <MessageType.device_info: 23>: timestamp(2018-03-23 07:32:59 (890721180)), product(2623), serial_number(3961162276), software_version(2.9 (290)), manufacturer(Manufacturer.Garmin (1)),
DEBUG:/Users/ninjarocketman/garminDB/GarminDB/FitFileProcessor.pyc:Processed 1 <MessageType.device_info: 23> entries for /Users/ninjarocketman/Downloads/18950741195.fit
DEBUG:/Users/ninjarocketman/garminDB/GarminDB/FitFileProcessor.pyc:software message: {'version': 3.9}
DEBUG:/Users/ninjarocketman/garminDB/GarminDB/FitFileProcessor.pyc:Processed 1 <MessageType.software: 35> entries for /Users/ninjarocketman/Downloads/18950741195.fit
Traceback (most recent call last):
  File "import_garmin.py", line 301, in <module>
    main(sys.argv[1:])
  File "import_garmin.py", line 287, in main
    gfd.process_files(db_params_dict)
  File "import_garmin.py", line 79, in process_files
    fp.write_file(Fit.File(file_name, self.english_units))
  File "/Users/ninjarocketman/garminDB/GarminDB/FitFileProcessor.py", line 67, in write_file
    self.write_message_types(fit_file, fit_file.message_types())
  File "/Users/ninjarocketman/garminDB/GarminDB/FitFileProcessor.py", line 59, in write_message_types
    self.write_message_type(fit_file, message_type)
  File "/Users/ninjarocketman/garminDB/GarminDB/FitFileProcessor.py", line 46, in write_message_type
    function(fit_file, message_type, messages)
  File "/Users/ninjarocketman/garminDB/GarminDB/FitFileProcessor.py", line 38, in write_generic
    function(fit_file, message)
  File "/Users/ninjarocketman/garminDB/GarminDB/FitFileProcessor.py", line 340, in write_monitoring_info_entry
    GarminDB.MonitoringInfo.find_or_create(self.garmin_mon_db, entry)
  File "/Users/ninjarocketman/garminDB/GarminDB/HealthDB/DB.py", line 231, in find_or_create
    DB.commit(session)
  File "/Users/ninjarocketman/garminDB/GarminDB/HealthDB/DB.py", line 58, in commit
    session.commit()
  File "/usr/local/lib/python2.7/site-packages/sqlalchemy/orm/session.py", line 943, in commit
    self.transaction.commit()
  File "/usr/local/lib/python2.7/site-packages/sqlalchemy/orm/session.py", line 467, in commit
    self._prepare_impl()
  File "/usr/local/lib/python2.7/site-packages/sqlalchemy/orm/session.py", line 447, in _prepare_impl
    self.session.flush()
  File "/usr/local/lib/python2.7/site-packages/sqlalchemy/orm/session.py", line 2254, in flush
    self._flush(objects)
  File "/usr/local/lib/python2.7/site-packages/sqlalchemy/orm/session.py", line 2381, in _flush
    transaction.rollback(_capture_exception=True)
  File "/usr/local/lib/python2.7/site-packages/sqlalchemy/util/langhelpers.py", line 66, in __exit__
    compat.reraise(exc_type, exc_value, exc_tb)
  File "/usr/local/lib/python2.7/site-packages/sqlalchemy/orm/session.py", line 2345, in _flush
    flush_context.execute()
  File "/usr/local/lib/python2.7/site-packages/sqlalchemy/orm/unitofwork.py", line 395, in execute
    rec.execute(self)
  File "/usr/local/lib/python2.7/site-packages/sqlalchemy/orm/unitofwork.py", line 560, in execute
    uow
  File "/usr/local/lib/python2.7/site-packages/sqlalchemy/orm/persistence.py", line 181, in save_obj
    mapper, table, insert)
  File "/usr/local/lib/python2.7/site-packages/sqlalchemy/orm/persistence.py", line 830, in _emit_insert_statements
    execute(statement, multiparams)
  File "/usr/local/lib/python2.7/site-packages/sqlalchemy/engine/base.py", line 948, in execute
    return meth(self, multiparams, params)
  File "/usr/local/lib/python2.7/site-packages/sqlalchemy/sql/elements.py", line 269, in _execute_on_connection
    return connection._execute_clauseelement(self, multiparams, params)
  File "/usr/local/lib/python2.7/site-packages/sqlalchemy/engine/base.py", line 1060, in _execute_clauseelement
    compiled_sql, distilled_params
  File "/usr/local/lib/python2.7/site-packages/sqlalchemy/engine/base.py", line 1200, in _execute_context
    context)
  File "/usr/local/lib/python2.7/site-packages/sqlalchemy/engine/base.py", line 1413, in _handle_dbapi_exception
    exc_info
  File "/usr/local/lib/python2.7/site-packages/sqlalchemy/util/compat.py", line 265, in raise_from_cause
    reraise(type(exception), exception, tb=exc_tb, cause=cause)
  File "/usr/local/lib/python2.7/site-packages/sqlalchemy/engine/base.py", line 1193, in _execute_context
    context)
  File "/usr/local/lib/python2.7/site-packages/sqlalchemy/engine/default.py", line 509, in do_execute
    cursor.execute(statement, parameters)
sqlalchemy.exc.IntegrityError: (sqlite3.IntegrityError) NOT NULL constraint failed: monitoring_info.file_id [SQL: u'INSERT INTO monitoring_info (timestamp, file_id, activity_type, resting_metabolic_rate, cycles_to_distance, cycles_to_calories) VALUES (?, ?, ?, ?, ?, ?)'] [parameters: ('2018-03-23 07:33:00.000000', None, 'walking', 1645, 1.4952, 0.039644593194676864)] (Background on this error at: http://sqlalche.me/e/gkpj)
make: *** [test_import_monitoring] Error 1
➜  GarminDB git:(master)

In line 123 it states:

DEBUG:/Users/ninjarocketman/garminDB/GarminDB/FitFileProcessor.pyc:No entry handler write_file_id_entry for message type <MessageType.file_id: 0> (1) from /Users/ninjarocketman/Downloads/18950741195.fit: DataMessage: <MessageType.file_id: 0>: unknown_6(None (65535) [invalid]), product(2623), number(177), time_created(2018-03-23 07:32:59 (890721180)), serial_number(3961162276), type(FileType.monitoring_b (32)), manufacturer(Manufacturer.Garmin (1)),

The write_file_id_entry in my FitFileProcessor.py script is:

    #
    # Message type handlers
    #
    def write_file_id_entry(self, fit_file, message):
        parsed_message = message.to_dict()
        self.serial_number = parsed_message.get('serial_number', None)
        self.manufacturer = parsed_message.get('manufacturer', None)
        self.product = parsed_message.get('product', None)
        if self.serial_number:
            device = {
                'serial_number' : self.serial_number,
                'timestamp'     : parsed_message['time_created'],
                'manufacturer'  : self.manufacturer,
                'product'       : Fit.FieldEnums.name_for_enum(self.product),
            }
            GarminDB.Device.find_or_create(self.garmin_db, device)
        file = {
            'name'          : fit_file.filename,
            'type'          : parsed_message['type'],
            'serial_number' : self.serial_number,
        }
        GarminDB.File.find_or_create(self.garmin_db, file)

Does this help?

from garmindb.

blaketwist avatar blaketwist commented on July 17, 2024

And of course I can share the file with you. I cannot send it here since the format is not supported. It's just 422 bytes, where do I send it to?

from garmindb.

tcgoetz avatar tcgoetz commented on July 17, 2024

VivoSport was not a known device. I've added it. make update and see if that fixes it.

from garmindb.

blaketwist avatar blaketwist commented on July 17, 2024

I see. Thank you.

I did the make update and re-ran with make GC_DATE=18.01.2018 GC_DAYS=322 GC_USER=user GC_PASSWORD=password create_dbs. All files are downloaded and the databases are created. When importing the data I get this error now though:

INFO:import_garmin.py:DB updated with 317 rhr entries
for dir in /Users/ninjarocketman/HealthData/FitFiles/2018_Monitoring/; do \
		python import_garmin.py -e --fit_input_dir "$dir" --sqlite /Users/ninjarocketman/HealthData/DBs; \
	done
INFO:import_garmin.py:Debug: 0 English units: True
INFO:/Users/ninjarocketman/garminDB/GarminDB/FileProcessor.pyc:Reading directory: /Users/ninjarocketman/HealthData/FitFiles/2018_Monitoring/
INFO:GarminDB.GarminDB:GarminDB: {'db_type': 'sqlite', 'db_path': '/Users/ninjarocketman/HealthData/DBs'} debug: -1
INFO:GarminDB.MonitoringDB:MonitoringDB: {'db_type': 'sqlite', 'db_path': '/Users/ninjarocketman/HealthData/DBs'} debug: -1
INFO:GarminDB.ActivitiesDB:ActivitiesDB: {'db_type': 'sqlite', 'db_path': '/Users/ninjarocketman/HealthData/DBs'} debug: -1
INFO:/Users/ninjarocketman/garminDB/GarminDB/FitFileProcessor.pyc:Debug: 0 English units: True
INFO:/Users/ninjarocketman/garminDB/GarminDB/FitFileProcessor.pyc:Importing /Users/ninjarocketman/HealthData/FitFiles/2018_Monitoring//17460546472.fit (2018-01-30 07:55:59) [FileType.monitoring_b] with message types: [<MessageType.file_id: 0>, <MessageType.device_info: 23>, <MessageType.software: 35>, <MessageType.monitoring_info: 103>, <MessageType.monitoring: 55>, <UnknownMessageType.unknown_211: 211>, <MessageType.stress_level: 227>, <MessageType.unknown_24: 24>, <MessageType.unknown_233: 233>]
Traceback (most recent call last):
  File "import_garmin.py", line 301, in <module>
    main(sys.argv[1:])
  File "import_garmin.py", line 287, in main
    gfd.process_files(db_params_dict)
  File "import_garmin.py", line 79, in process_files
    fp.write_file(Fit.File(file_name, self.english_units))
  File "/Users/ninjarocketman/garminDB/GarminDB/FitFileProcessor.py", line 67, in write_file
    self.write_message_types(fit_file, fit_file.message_types())
  File "/Users/ninjarocketman/garminDB/GarminDB/FitFileProcessor.py", line 56, in write_message_types
    self.write_message_type(fit_file, message_type)
  File "/Users/ninjarocketman/garminDB/GarminDB/FitFileProcessor.py", line 46, in write_message_type
    function(fit_file, message_type, messages)
  File "/Users/ninjarocketman/garminDB/GarminDB/FitFileProcessor.py", line 38, in write_generic
    function(fit_file, message)
  File "/Users/ninjarocketman/garminDB/GarminDB/FitFileProcessor.py", line 82, in write_file_id_entry
    'product'       : Fit.FieldEnums.name_for_enum(self.product),
  File "/Users/ninjarocketman/garminDB/GarminDB/Fit/FieldEnums.py", line 13, in name_for_enum
    return enum_instance.name
AttributeError: 'int' object has no attribute 'name'
make: *** [import_monitoring] Error 1
➜  GarminDB git:(master) ✗

The debug output is:

➜  GarminDB git:(master) ✗ make TEST_GC_ID=17460546472 test_import_monitoring
Makefile:210: warning: overriding commands for target `test_import_json_activities'
Makefile:201: warning: ignoring old commands for target `test_import_json_activities'
python import_garmin.py -t1 -e --fit_input_file "/Users/nina/HealthData/FitFiles/2018_Monitoring/17460546472.fit" --sqlite /Users/nina/HealthData/DBs
INFO:import_garmin.py:Debug: 1 English units: True
INFO:/Users/nina/garminDB/GarminDB/FileProcessor.pyc:Reading file: /Users/nina/HealthData/FitFiles/2018_Monitoring/17460546472.fit
INFO:GarminDB.GarminDB:GarminDB: {'db_type': 'sqlite', 'db_path': '/Users/nina/HealthData/DBs'} debug: 0
DEBUG:HealthDB.DB:DB {'db_type': 'sqlite', 'db_path': '/Users/nina/HealthData/DBs'} debug 0
INFO:GarminDB.MonitoringDB:MonitoringDB: {'db_type': 'sqlite', 'db_path': '/Users/nina/HealthData/DBs'} debug: 0
INFO:GarminDB.ActivitiesDB:ActivitiesDB: {'db_type': 'sqlite', 'db_path': '/Users/nina/HealthData/DBs'} debug: 0
INFO:/Users/nina/garminDB/GarminDB/FitFileProcessor.pyc:Debug: 1 English units: True
DEBUG:Fit.File:Parsing File /Users/nina/HealthData/FitFiles/2018_Monitoring/17460546472.fit
DEBUG:Fit.File:Parsed record RecordHeader: Local definition message 0 (Compressed 0)
DEBUG:Fit.File:  Definition [0]: DefinitionMessage: <MessageType.file_id: 0> 7 Little_Endian fields
DEBUG:Fit.File:Record 1: consumed 27 of 633 True
DEBUG:Fit.File:Parsed record RecordHeader: Local data message 0 (Compressed 0)
DEBUG:Fit.File:  Data [0]: DataMessage: <MessageType.file_id: 0>: unknown_6(None (65535) [invalid]), product(2623), number(103), time_created(2018-01-30 07:55:59 (886229760)), serial_number(3961162276), type(FileType.monitoring_b (32)), manufacturer(Manufacturer.Garmin (1)),
DEBUG:Fit.File:Parsed <MessageType.file_id: 0>
DEBUG:Fit.File:Record 2: consumed 45 of 633 True
DEBUG:Fit.File:Parsed record RecordHeader: Local definition message 1 (Compressed 0)
DEBUG:Fit.File:  Definition [1]: DefinitionMessage: <MessageType.device_info: 23> 5 Little_Endian fields
DEBUG:Fit.File:Record 3: consumed 66 of 633 True
DEBUG:Fit.File:Parsed record RecordHeader: Local data message 1 (Compressed 0)
DEBUG:Fit.File:  Data [1]: DataMessage: <MessageType.device_info: 23>: timestamp(2018-01-30 07:55:59 (886229760)), product(2623), serial_number(3961162276), software_version(2.8 (280)), manufacturer(Manufacturer.Garmin (1)),
DEBUG:Fit.File:Parsed <MessageType.device_info: 23>
DEBUG:Fit.File:Record 4: consumed 81 of 633 True
DEBUG:Fit.File:Parsed record RecordHeader: Local definition message 2 (Compressed 0)
DEBUG:Fit.File:  Definition [2]: DefinitionMessage: <MessageType.software: 35> 1 Little_Endian fields
DEBUG:Fit.File:Record 5: consumed 90 of 633 True
DEBUG:Fit.File:Parsed record RecordHeader: Local data message 2 (Compressed 0)
DEBUG:Fit.File:  Data [2]: DataMessage: <MessageType.software: 35>: version(3.7 (370)),
DEBUG:Fit.File:Parsed <MessageType.software: 35>
DEBUG:Fit.File:Record 6: consumed 93 of 633 True
DEBUG:Fit.File:Parsed record RecordHeader: Local definition message 3 (Compressed 0)
DEBUG:Fit.File:  Definition [3]: DefinitionMessage: <MessageType.monitoring_info: 103> 8 Little_Endian fields
DEBUG:Fit.File:Record 7: consumed 123 of 633 True
DEBUG:Fit.File:Parsed record RecordHeader: Local data message 3 (Compressed 0)
DEBUG:Fit.File:  Data [3]: DataMessage: <MessageType.monitoring_info: 103>: resting_metabolic_rate(1645 kcal/day), unknown_7([10000, 7500]), cycles_to_calories([0.039644593194676864, 0.12491035142242408] ['kcal/cycle', 'kcal/cycle'] ([199, 627])), timestamp(2018-01-30 07:55:59 (886229760)), local_timestamp(2018-01-30 07:56:00 (886233360)), unknown_8(1), cycles_to_distance([1.4952, 2.2428] ['m/cycle', 'm/cycle'] ([7476, 11214])), activity_type([<ActivityType.walking: 6>, <ActivityType.running: 1>] ([6, 1])),
DEBUG:Fit.File:Parsed <MessageType.monitoring_info: 103>
DEBUG:Fit.File:Record 8: consumed 153 of 633 True
DEBUG:Fit.File:Parsed record RecordHeader: Local definition message 4 (Compressed 0)
DEBUG:Fit.File:  Definition [4]: DefinitionMessage: <MessageType.monitoring: 55> 7 Little_Endian fields
DEBUG:Fit.File:Record 9: consumed 180 of 633 True
DEBUG:Fit.File:Parsed record RecordHeader: Local data message 4 (Compressed 0)
DEBUG:Fit.File:  Data [4]: DataMessage: <MessageType.monitoring: 55>: distance(41446.8503937 ft (12633)), active_calories(7 kcal), timestamp(2018-01-30 07:55:59 (886229760)), cum_active_time(00:07:51 (471000)), steps(169.0 steps), duration(07:56:00 (476)), activity_type(ActivityType.walking (6)),
DEBUG:Fit.File:Parsed <MessageType.monitoring: 55>
DEBUG:Fit.File:Record 10: consumed 202 of 633 True
DEBUG:Fit.File:Parsed record RecordHeader: Local definition message 5 (Compressed 0)
DEBUG:Fit.File:  Definition [5]: DefinitionMessage: <MessageType.monitoring: 55> 3 Little_Endian fields
DEBUG:Fit.File:Record 11: consumed 217 of 633 True
DEBUG:Fit.File:Parsed record RecordHeader: Local data message 5 (Compressed 0)
DEBUG:Fit.File:  Data [5]: DataMessage: <MessageType.monitoring: 55>: timestamp(2018-01-30 07:55:59 (886229760)), cum_ascent(0.0 ft), cum_descent(0.0 ft),
DEBUG:Fit.File:Parsed <MessageType.monitoring: 55>
DEBUG:Fit.File:Record 12: consumed 230 of 633 True
DEBUG:Fit.File:Parsed record RecordHeader: Local definition message 6 (Compressed 0)
DEBUG:Fit.File:  Definition [6]: DefinitionMessage: <MessageType.monitoring: 55> 3 Little_Endian fields
DEBUG:Fit.File:Record 13: consumed 245 of 633 True
DEBUG:Fit.File:Parsed record RecordHeader: Local data message 6 (Compressed 0)
DEBUG:Fit.File:  Data [6]: DataMessage: <MessageType.monitoring: 55>: timestamp(2018-01-30 07:55:59 (886229760)), unknown_38(0), unknown_37(0),
DEBUG:Fit.File:Parsed <MessageType.monitoring: 55>
DEBUG:Fit.File:Record 14: consumed 254 of 633 True
DEBUG:Fit.File:Parsed record RecordHeader: Local definition message 7 (Compressed 0)
DEBUG:Fit.File:  Definition [7]: DefinitionMessage: <UnknownMessageType.unknown_211: 211> 3 Little_Endian fields
DEBUG:Fit.File:Record 15: consumed 269 of 633 True
DEBUG:Fit.File:Parsed record RecordHeader: Local data message 7 (Compressed 0)
DEBUG:Fit.File:  Data [7]: DataMessage: <UnknownMessageType.unknown_211: 211>: timestamp(2018-01-30 07:55:59 (886229760)), unknown_0(56), unknown_1(58),
DEBUG:Fit.File:Parsed <UnknownMessageType.unknown_211: 211>
DEBUG:Fit.File:Record 16: consumed 276 of 633 True
DEBUG:Fit.File:Parsed record RecordHeader: Local definition message 0 (Compressed 0)
DEBUG:Fit.File:  Definition [0]: DefinitionMessage: <MessageType.stress_level: 227> 5 Little_Endian fields
DEBUG:Fit.File:Record 17: consumed 297 of 633 True
DEBUG:Fit.File:Parsed record RecordHeader: Local data message 0 (Compressed 0)
DEBUG:Fit.File:  Data [0]: DataMessage: <MessageType.stress_level: 227>: stress_level_time(2018-01-30 06:56:00 (886229760)), unknown_4(1), stress_level_value(-2), unknown_2(102), unknown_3(49),
DEBUG:Fit.File:Parsed <MessageType.stress_level: 227>
DEBUG:Fit.File:Record 18: consumed 307 of 633 True
DEBUG:Fit.File:Parsed record RecordHeader: Local definition message 1 (Compressed 0)
DEBUG:Fit.File:  Definition [1]: DefinitionMessage: <MessageType.monitoring: 55> 2 Little_Endian fields
DEBUG:Fit.File:Record 19: consumed 319 of 633 True
DEBUG:Fit.File:Parsed record RecordHeader: Local data message 1 (Compressed 0)
DEBUG:Fit.File:  Data [1]: DataMessage: <MessageType.monitoring: 55>: heart_rate(82 bpm), timestamp_16(52028 s),
DEBUG:Fit.File:Parsed <MessageType.monitoring: 55>
DEBUG:Fit.File:Record 20: consumed 323 of 633 True
DEBUG:Fit.File:Parsed record RecordHeader: Local definition message 2 (Compressed 0)
DEBUG:Fit.File:  Definition [2]: DefinitionMessage: <MessageType.unknown_24: 24> 1 Little_Endian fields
DEBUG:Fit.File:Record 21: consumed 332 of 633 True
DEBUG:Fit.File:Parsed record RecordHeader: Local data message 2 (Compressed 0)
DEBUG:Fit.File:  Data [2]: DataMessage: <MessageType.unknown_24: 24>: unknown_2(V��4 ([86, 203, 210, 52, 4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0])),
DEBUG:Fit.File:Parsed <MessageType.unknown_24: 24>
DEBUG:Fit.File:Record 22: consumed 355 of 633 True
DEBUG:Fit.File:Parsed record RecordHeader: Local data message 2 (Compressed 0)
DEBUG:Fit.File:  Data [2]: DataMessage: <MessageType.unknown_24: 24>: unknown_2(W��4 ([87, 203, 210, 52, 22, 0, 4, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0])),
DEBUG:Fit.File:Parsed <MessageType.unknown_24: 24>
DEBUG:Fit.File:Record 23: consumed 378 of 633 True
DEBUG:Fit.File:Parsed record RecordHeader: Local data message 2 (Compressed 0)
DEBUG:Fit.File:  Data [2]: DataMessage: <MessageType.unknown_24: 24>: unknown_2(d��4
 ([100, 203, 210, 52, 4, 0, 10, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0])),
DEBUG:Fit.File:Parsed <MessageType.unknown_24: 24>
DEBUG:Fit.File:Record 24: consumed 401 of 633 True
DEBUG:Fit.File:Parsed record RecordHeader: Local data message 2 (Compressed 0)
DEBUG:Fit.File:  Data [2]: DataMessage: <MessageType.unknown_24: 24>: unknown_2(d��4 ([100, 203, 210, 52, 22, 0, 5, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0])),
DEBUG:Fit.File:Parsed <MessageType.unknown_24: 24>
DEBUG:Fit.File:Record 25: consumed 424 of 633 True
DEBUG:Fit.File:Parsed record RecordHeader: Local definition message 3 (Compressed 0)
DEBUG:Fit.File:  Definition [3]: DefinitionMessage: <MessageType.unknown_233: 233> 1 Little_Endian fields
DEBUG:Fit.File:Record 26: consumed 433 of 633 True
DEBUG:Fit.File:Parsed record RecordHeader: Local data message 3 (Compressed 0)
DEBUG:Fit.File:  Data [3]: DataMessage: <MessageType.unknown_233: 233>: unknown_2((� ([40, 0, 0, 248])),
DEBUG:Fit.File:Parsed <MessageType.unknown_233: 233>
DEBUG:Fit.File:Record 27: consumed 438 of 633 True
DEBUG:Fit.File:Parsed record RecordHeader: Local definition message 4 (Compressed 0)
DEBUG:Fit.File:  Definition [4]: DefinitionMessage: <MessageType.monitoring: 55> 2 Little_Endian fields
DEBUG:Fit.File:Record 28: consumed 450 of 633 True
DEBUG:Fit.File:Parsed record RecordHeader: Local data message 4 (Compressed 0)
DEBUG:Fit.File:  Data [4]: DataMessage: <MessageType.monitoring: 55>: timestamp(2018-01-30 07:56:59 (886229820)), intensity(5), activity_type(ActivityType.stop_disable (8)),
DEBUG:Fit.File:Parsed <MessageType.monitoring: 55>
DEBUG:Fit.File:Record 29: consumed 456 of 633 True
DEBUG:Fit.File:Parsed record RecordHeader: Local data message 1 (Compressed 0)
DEBUG:Fit.File:  Data [1]: DataMessage: <MessageType.monitoring: 55>: heart_rate(84 bpm), timestamp_16(52088 s),
DEBUG:Fit.File:Parsed <MessageType.monitoring: 55>
DEBUG:Fit.File:Record 30: consumed 460 of 633 True
DEBUG:Fit.File:Parsed record RecordHeader: Local data message 3 (Compressed 0)
DEBUG:Fit.File:  Data [3]: DataMessage: <MessageType.unknown_233: 233>: unknown_2( ([2, 192, 0, 8])),
DEBUG:Fit.File:Parsed <MessageType.unknown_233: 233>
DEBUG:Fit.File:Record 31: consumed 465 of 633 True
DEBUG:Fit.File:Parsed record RecordHeader: Local definition message 5 (Compressed 0)
DEBUG:Fit.File:  Definition [5]: DefinitionMessage: <MessageType.monitoring: 55> 5 Little_Endian fields
DEBUG:Fit.File:Record 32: consumed 486 of 633 True
DEBUG:Fit.File:Parsed record RecordHeader: Local data message 5 (Compressed 0)
DEBUG:Fit.File:  Data [5]: DataMessage: <MessageType.monitoring: 55>: active_calories(7 kcal), cum_active_time(00:07:55 (475000)), intensity(1), steps(180.0 steps), timestamp_16(52088 s), activity_type(ActivityType.walking (6)),
DEBUG:Fit.File:Parsed <MessageType.monitoring: 55>
DEBUG:Fit.File:Record 33: consumed 500 of 633 True
DEBUG:Fit.File:Parsed record RecordHeader: Local data message 1 (Compressed 0)
DEBUG:Fit.File:  Data [1]: DataMessage: <MessageType.monitoring: 55>: heart_rate(81 bpm), timestamp_16(52148 s),
DEBUG:Fit.File:Parsed <MessageType.monitoring: 55>
DEBUG:Fit.File:Record 34: consumed 504 of 633 True
DEBUG:Fit.File:Parsed record RecordHeader: Local data message 4 (Compressed 0)
DEBUG:Fit.File:  Data [4]: DataMessage: <MessageType.monitoring: 55>: timestamp(2018-01-30 07:58:59 (886229940)), intensity(4), activity_type(ActivityType.stop_disable (8)),
DEBUG:Fit.File:Parsed <MessageType.monitoring: 55>
DEBUG:Fit.File:Record 35: consumed 510 of 633 True
DEBUG:Fit.File:Parsed record RecordHeader: Local definition message 6 (Compressed 0)
DEBUG:Fit.File:  Definition [6]: DefinitionMessage: <MessageType.monitoring: 55> 7 Little_Endian fields
DEBUG:Fit.File:Record 36: consumed 537 of 633 True
DEBUG:Fit.File:Parsed record RecordHeader: Local data message 6 (Compressed 0)
DEBUG:Fit.File:  Data [6]: DataMessage: <MessageType.monitoring: 55>: distance(44143.7007874 ft (13455)), active_calories(7 kcal), timestamp(2018-01-30 07:58:59 (886229940)), cum_active_time(00:07:55 (475000)), steps(180.0 steps), duration(07:59:00 (479)), activity_type(ActivityType.walking (6)),
DEBUG:Fit.File:Parsed <MessageType.monitoring: 55>
DEBUG:Fit.File:Record 37: consumed 559 of 633 True
DEBUG:Fit.File:Parsed record RecordHeader: Local definition message 7 (Compressed 0)
DEBUG:Fit.File:  Definition [7]: DefinitionMessage: <MessageType.monitoring: 55> 3 Little_Endian fields
DEBUG:Fit.File:Record 38: consumed 574 of 633 True
DEBUG:Fit.File:Parsed record RecordHeader: Local data message 7 (Compressed 0)
DEBUG:Fit.File:  Data [7]: DataMessage: <MessageType.monitoring: 55>: timestamp(2018-01-30 07:58:59 (886229940)), cum_ascent(0.0 ft), cum_descent(0.0 ft),
DEBUG:Fit.File:Parsed <MessageType.monitoring: 55>
DEBUG:Fit.File:Record 39: consumed 587 of 633 True
DEBUG:Fit.File:Parsed record RecordHeader: Local definition message 0 (Compressed 0)
DEBUG:Fit.File:  Definition [0]: DefinitionMessage: <MessageType.monitoring: 55> 3 Little_Endian fields
DEBUG:Fit.File:Record 40: consumed 602 of 633 True
DEBUG:Fit.File:Parsed record RecordHeader: Local data message 0 (Compressed 0)
DEBUG:Fit.File:  Data [0]: DataMessage: <MessageType.monitoring: 55>: timestamp(2018-01-30 07:58:59 (886229940)), unknown_38(0), unknown_37(0),
DEBUG:Fit.File:Parsed <MessageType.monitoring: 55>
DEBUG:Fit.File:Record 41: consumed 611 of 633 True
DEBUG:Fit.File:Parsed record RecordHeader: Local definition message 1 (Compressed 0)
DEBUG:Fit.File:  Definition [1]: DefinitionMessage: <UnknownMessageType.unknown_211: 211> 3 Little_Endian fields
DEBUG:Fit.File:Record 42: consumed 626 of 633 True
DEBUG:Fit.File:Parsed record RecordHeader: Local data message 1 (Compressed 0)
DEBUG:Fit.File:  Data [1]: DataMessage: <UnknownMessageType.unknown_211: 211>: timestamp(2018-01-30 07:58:59 (886229940)), unknown_0(56), unknown_1(58),
DEBUG:Fit.File:Parsed <UnknownMessageType.unknown_211: 211>
DEBUG:Fit.File:Record 43: consumed 633 of 633 True
DEBUG:Fit.File:File /Users/nina/HealthData/FitFiles/2018_Monitoring/17460546472.fit: 2018-01-30 07:55:59 -> 2018-01-30 07:58:59
INFO:/Users/nina/garminDB/GarminDB/FitFileProcessor.pyc:Importing /Users/nina/HealthData/FitFiles/2018_Monitoring/17460546472.fit (2018-01-30 07:55:59) [FileType.monitoring_b] with message types: [<MessageType.file_id: 0>, <MessageType.device_info: 23>, <MessageType.software: 35>, <MessageType.monitoring_info: 103>, <MessageType.monitoring: 55>, <UnknownMessageType.unknown_211: 211>, <MessageType.stress_level: 227>, <MessageType.unknown_24: 24>, <MessageType.unknown_233: 233>]
Traceback (most recent call last):
  File "import_garmin.py", line 301, in <module>
    main(sys.argv[1:])
  File "import_garmin.py", line 287, in main
    gfd.process_files(db_params_dict)
  File "import_garmin.py", line 79, in process_files
    fp.write_file(Fit.File(file_name, self.english_units))
  File "/Users/nina/garminDB/GarminDB/FitFileProcessor.py", line 67, in write_file
    self.write_message_types(fit_file, fit_file.message_types())
  File "/Users/nina/garminDB/GarminDB/FitFileProcessor.py", line 56, in write_message_types
    self.write_message_type(fit_file, message_type)
  File "/Users/nina/garminDB/GarminDB/FitFileProcessor.py", line 46, in write_message_type
    function(fit_file, message_type, messages)
  File "/Users/nina/garminDB/GarminDB/FitFileProcessor.py", line 38, in write_generic
    function(fit_file, message)
  File "/Users/nina/garminDB/GarminDB/FitFileProcessor.py", line 82, in write_file_id_entry
    'product'       : Fit.FieldEnums.name_for_enum(self.product),
  File "/Users/nina/garminDB/GarminDB/Fit/FieldEnums.py", line 13, in name_for_enum
    return enum_instance.name
AttributeError: 'int' object has no attribute 'name'
make: *** [test_import_monitoring] Error 1
➜  GarminDB git:(master) ✗

from garmindb.

tcgoetz avatar tcgoetz commented on July 17, 2024

Can you upload the file to a file share service like Dropbox and send me the link?

from garmindb.

blaketwist avatar blaketwist commented on July 17, 2024

Sure. The link is here.

from garmindb.

tcgoetz avatar tcgoetz commented on July 17, 2024

Please update and try again. Your file works for me with the latest commits.

from garmindb.

blaketwist avatar blaketwist commented on July 17, 2024

That worked a lot better now. Still I get an error after about 500 imports. From the output:

Last script call:

for dir in /Users/ninjarocketman/HealthData/FitFiles/2018_Monitoring/; do \
    python import_garmin.py -e --fit_input_dir "$dir" --sqlite /Users/ninjarocketman/HealthData/DBs; \
  done

... (import of many fit files)

Error:

INFO:/Users/ninjarocketman/garminDB/GarminDB/FitFileProcessor.pyc:Importing /Users/ninjarocketman/HealthData/FitFiles/2018_Monitoring//17917800570.fit (2018-02-14 22:53:59) [FileType.monitoring_b] with message types: [<MessageType.file_id: 0>, <MessageType.device_info: 23>, <MessageType.software: 35>, <MessageType.monitoring_info: 103>, <MessageType.monitoring: 55>, <UnknownMessageType.unknown_211: 211>, <MessageType.unknown_233: 233>, <MessageType.stress_level: 227>, <MessageType.event: 21>]
INFO:/Users/ninjarocketman/garminDB/GarminDB/FitFileProcessor.pyc:file_id message: {'unknown_6': None, 'product': <GarminProduct.VivoSport: 2623>, 'number': 199, 'time_created': datetime.datetime(2018, 2, 14, 22, 53, 59), 'serial_number': 3961162276, 'type': <FileType.monitoring_b: 32>, 'manufacturer': <Manufacturer.Garmin: 1>}
Traceback (most recent call last):
  File "import_garmin.py", line 301, in <module>
    main(sys.argv[1:])
  File "import_garmin.py", line 287, in main
    gfd.process_files(db_params_dict)
  File "import_garmin.py", line 79, in process_files
    fp.write_file(Fit.File(file_name, self.english_units))
  File "/Users/ninjarocketman/garminDB/GarminDB/Fit/File.py", line 32, in __init__
    self.parse()
  File "/Users/ninjarocketman/garminDB/GarminDB/Fit/File.py", line 77, in parse
    data_message = DataMessage(definition_message, self.file, self.english_units)
  File "/Users/ninjarocketman/garminDB/GarminDB/Fit/DataMessage.py", line 45, in __init__
    control_values = [message_fields[control_field].value for control_field in field.dependant_field_control_fields]
KeyError: 'source_type'
make: *** [import_monitoring] Error 1

The databases garmin.db and garmin_monitoring.db show entries now, but the entries are not complete for all days that are recorded. garmin_activities.db is empty.

Link to the file: 17917800570

from garmindb.

blaketwist avatar blaketwist commented on July 17, 2024

Oh, and the debug output:

➜  GarminDB git:(master) ✗ make TEST_GC_ID=17917800570 test_import_monitoring
Makefile:210: warning: overriding commands for target `test_import_json_activities'
Makefile:201: warning: ignoring old commands for target `test_import_json_activities'
python import_garmin.py -t1 -e --fit_input_file "/Users/ninjarocketman/HealthData/FitFiles/2018_Monitoring/17917800570.fit" --sqlite /Users/ninjarocketman/HealthData/DBs
INFO:import_garmin.py:Debug: 1 English units: True
INFO:/Users/ninjarocketman/garminDB/GarminDB/FileProcessor.pyc:Reading file: /Users/ninjarocketman/HealthData/FitFiles/2018_Monitoring/17917800570.fit
INFO:GarminDB.GarminDB:GarminDB: {'db_type': 'sqlite', 'db_path': '/Users/ninjarocketman/HealthData/DBs'} debug: 0
DEBUG:HealthDB.DB:DB {'db_type': 'sqlite', 'db_path': '/Users/ninjarocketman/HealthData/DBs'} debug 0
INFO:GarminDB.MonitoringDB:MonitoringDB: {'db_type': 'sqlite', 'db_path': '/Users/ninjarocketman/HealthData/DBs'} debug: 0
INFO:GarminDB.ActivitiesDB:ActivitiesDB: {'db_type': 'sqlite', 'db_path': '/Users/ninjarocketman/HealthData/DBs'} debug: 0
INFO:/Users/ninjarocketman/garminDB/GarminDB/FitFileProcessor.pyc:Debug: 1 English units: True
DEBUG:Fit.File:Parsing File /Users/ninjarocketman/HealthData/FitFiles/2018_Monitoring/17917800570.fit
DEBUG:Fit.File:Parsed record RecordHeader: Local definition message 0 (Compressed 0)
DEBUG:Fit.File:  Definition [0]: DefinitionMessage: <MessageType.file_id: 0> 7 Little_Endian fields
DEBUG:Fit.File:Record 1: consumed 27 of 1814 True
DEBUG:Fit.File:Parsed record RecordHeader: Local data message 0 (Compressed 0)
DEBUG:Fit.File:  Data [0]: DataMessage: <MessageType.file_id: 0>: unknown_6(None (65535) [invalid]), product(GarminProduct.VivoSport (2623)), number(199), time_created(2018-02-14 22:53:59 (887579640)), serial_number(3961162276), type(FileType.monitoring_b (32)), manufacturer(Manufacturer.Garmin (1)),
DEBUG:Fit.File:Parsed <MessageType.file_id: 0>
DEBUG:Fit.File:Record 2: consumed 45 of 1814 True
DEBUG:Fit.File:Parsed record RecordHeader: Local definition message 1 (Compressed 0)
DEBUG:Fit.File:  Definition [1]: DefinitionMessage: <MessageType.device_info: 23> 5 Little_Endian fields
DEBUG:Fit.File:Record 3: consumed 66 of 1814 True
DEBUG:Fit.File:Parsed record RecordHeader: Local data message 1 (Compressed 0)
DEBUG:Fit.File:  Data [1]: DataMessage: <MessageType.device_info: 23>: timestamp(2018-02-14 22:53:59 (887579640)), product(GarminProduct.VivoSport (2623)), serial_number(3961162276), software_version(2.9 (290)), manufacturer(Manufacturer.Garmin (1)),
DEBUG:Fit.File:Parsed <MessageType.device_info: 23>
DEBUG:Fit.File:Record 4: consumed 81 of 1814 True
DEBUG:Fit.File:Parsed record RecordHeader: Local definition message 2 (Compressed 0)
DEBUG:Fit.File:  Definition [2]: DefinitionMessage: <MessageType.software: 35> 1 Little_Endian fields
DEBUG:Fit.File:Record 5: consumed 90 of 1814 True
DEBUG:Fit.File:Parsed record RecordHeader: Local data message 2 (Compressed 0)
DEBUG:Fit.File:  Data [2]: DataMessage: <MessageType.software: 35>: version(3.9 (390)),
DEBUG:Fit.File:Parsed <MessageType.software: 35>
DEBUG:Fit.File:Record 6: consumed 93 of 1814 True
DEBUG:Fit.File:Parsed record RecordHeader: Local definition message 3 (Compressed 0)
DEBUG:Fit.File:  Definition [3]: DefinitionMessage: <MessageType.monitoring_info: 103> 8 Little_Endian fields
DEBUG:Fit.File:Record 7: consumed 123 of 1814 True
DEBUG:Fit.File:Parsed record RecordHeader: Local data message 3 (Compressed 0)
DEBUG:Fit.File:  Data [3]: DataMessage: <MessageType.monitoring_info: 103>: resting_metabolic_rate(1645 kcal/day), unknown_7([10000, 7500]), cycles_to_calories([0.039644593194676864, 0.12491035142242408] ['kcal/cycle', 'kcal/cycle'] ([199, 627])), timestamp(2018-02-14 22:53:59 (887579640)), local_timestamp(2018-02-14 22:54:00 (887583240)), unknown_8(1), cycles_to_distance([1.4952, 2.2428] ['m/cycle', 'm/cycle'] ([7476, 11214])), activity_type([<ActivityType.walking: 6>, <ActivityType.running: 1>] ([6, 1])),
DEBUG:Fit.File:Parsed <MessageType.monitoring_info: 103>
DEBUG:Fit.File:Record 8: consumed 153 of 1814 True
DEBUG:Fit.File:Parsed record RecordHeader: Local definition message 4 (Compressed 0)
DEBUG:Fit.File:  Definition [4]: DefinitionMessage: <MessageType.monitoring: 55> 7 Little_Endian fields
DEBUG:Fit.File:Record 9: consumed 180 of 1814 True
DEBUG:Fit.File:Parsed record RecordHeader: Local data message 4 (Compressed 0)
DEBUG:Fit.File:  Data [4]: DataMessage: <MessageType.monitoring: 55>: distance(0.0 ft), active_calories(22 kcal), timestamp(2018-02-14 22:53:59 (887579640)), cum_active_time(00:06:38 (398000)), duration(22:54:00 (1374)), cycles(0.0 cycles), activity_type(ActivityType.generic (0)),
DEBUG:Fit.File:Parsed <MessageType.monitoring: 55>
DEBUG:Fit.File:Record 10: consumed 202 of 1814 True
DEBUG:Fit.File:Parsed record RecordHeader: Local data message 4 (Compressed 0)
DEBUG:Fit.File:  Data [4]: DataMessage: <MessageType.monitoring: 55>: distance(1442211.28609 ft (439586)), active_calories(188 kcal), timestamp(2018-02-14 22:53:59 (887579640)), cum_active_time(01:43:21 (6201000)), steps(5880.0 steps), duration(22:54:00 (1374)), activity_type(ActivityType.walking (6)),
DEBUG:Fit.File:Parsed <MessageType.monitoring: 55>
DEBUG:Fit.File:Record 11: consumed 224 of 1814 True
DEBUG:Fit.File:Parsed record RecordHeader: Local definition message 5 (Compressed 0)
DEBUG:Fit.File:  Definition [5]: DefinitionMessage: <MessageType.monitoring: 55> 3 Little_Endian fields
DEBUG:Fit.File:Record 12: consumed 239 of 1814 True
DEBUG:Fit.File:Parsed record RecordHeader: Local data message 5 (Compressed 0)
DEBUG:Fit.File:  Data [5]: DataMessage: <MessageType.monitoring: 55>: timestamp(2018-02-14 22:53:59 (887579640)), cum_ascent(27.4573490814 ft (8369)), cum_descent(44.9770341207 ft (13709)),
DEBUG:Fit.File:Parsed <MessageType.monitoring: 55>
DEBUG:Fit.File:Record 13: consumed 252 of 1814 True
DEBUG:Fit.File:Parsed record RecordHeader: Local definition message 6 (Compressed 0)
DEBUG:Fit.File:  Definition [6]: DefinitionMessage: <MessageType.monitoring: 55> 3 Little_Endian fields
DEBUG:Fit.File:Record 14: consumed 267 of 1814 True
DEBUG:Fit.File:Parsed record RecordHeader: Local data message 6 (Compressed 0)
DEBUG:Fit.File:  Data [6]: DataMessage: <MessageType.monitoring: 55>: timestamp(2018-02-14 22:53:59 (887579640)), unknown_38(0), unknown_37(0),
DEBUG:Fit.File:Parsed <MessageType.monitoring: 55>
DEBUG:Fit.File:Record 15: consumed 276 of 1814 True
DEBUG:Fit.File:Parsed record RecordHeader: Local definition message 7 (Compressed 0)
DEBUG:Fit.File:  Definition [7]: DefinitionMessage: <UnknownMessageType.unknown_211: 211> 3 Little_Endian fields
DEBUG:Fit.File:Record 16: consumed 291 of 1814 True
DEBUG:Fit.File:Parsed record RecordHeader: Local data message 7 (Compressed 0)
DEBUG:Fit.File:  Data [7]: DataMessage: <UnknownMessageType.unknown_211: 211>: timestamp(2018-02-14 22:53:59 (887579640)), unknown_0(53), unknown_1(54),
DEBUG:Fit.File:Parsed <UnknownMessageType.unknown_211: 211>
DEBUG:Fit.File:Record 17: consumed 298 of 1814 True
DEBUG:Fit.File:Parsed record RecordHeader: Local definition message 0 (Compressed 0)
DEBUG:Fit.File:  Definition [0]: DefinitionMessage: <MessageType.unknown_233: 233> 1 Little_Endian fields
DEBUG:Fit.File:Record 18: consumed 307 of 1814 True
DEBUG:Fit.File:Parsed record RecordHeader: Local data message 0 (Compressed 0)
DEBUG:Fit.File:  Data [0]: DataMessage: <MessageType.unknown_233: 233>: unknown_2(80 ([56, 48, 0, 16])),
DEBUG:Fit.File:Parsed <MessageType.unknown_233: 233>
DEBUG:Fit.File:Record 19: consumed 312 of 1814 True
DEBUG:Fit.File:Parsed record RecordHeader: Local definition message 1 (Compressed 0)
DEBUG:Fit.File:  Definition [1]: DefinitionMessage: <MessageType.stress_level: 227> 5 Little_Endian fields
DEBUG:Fit.File:Record 20: consumed 333 of 1814 True
DEBUG:Fit.File:Parsed record RecordHeader: Local data message 1 (Compressed 0)
DEBUG:Fit.File:  Data [1]: DataMessage: <MessageType.stress_level: 227>: stress_level_time(2018-02-14 21:55:00 (887579700)), unknown_4(1), stress_level_value(23), unknown_2(6), unknown_3(33),
DEBUG:Fit.File:Parsed <MessageType.stress_level: 227>
DEBUG:Fit.File:Record 21: consumed 343 of 1814 True
DEBUG:Fit.File:Parsed record RecordHeader: Local data message 0 (Compressed 0)
DEBUG:Fit.File:  Data [0]: DataMessage: <MessageType.unknown_233: 233>: unknown_2( ([0, 0, 0, 24])),
DEBUG:Fit.File:Parsed <MessageType.unknown_233: 233>
DEBUG:Fit.File:Record 22: consumed 348 of 1814 True
DEBUG:Fit.File:Parsed record RecordHeader: Local definition message 2 (Compressed 0)
DEBUG:Fit.File:  Definition [2]: DefinitionMessage: <MessageType.monitoring: 55> 2 Little_Endian fields
DEBUG:Fit.File:Record 23: consumed 360 of 1814 True
DEBUG:Fit.File:Parsed record RecordHeader: Local data message 2 (Compressed 0)
DEBUG:Fit.File:  Data [2]: DataMessage: <MessageType.monitoring: 55>: heart_rate(66 bpm), timestamp_16(25712 s),
DEBUG:Fit.File:Parsed <MessageType.monitoring: 55>
DEBUG:Fit.File:Record 24: consumed 364 of 1814 True
DEBUG:Fit.File:Parsed record RecordHeader: Local data message 0 (Compressed 0)
DEBUG:Fit.File:  Data [0]: DataMessage: <MessageType.unknown_233: 233>: unknown_2( ([7, 254, 7, 0])),
DEBUG:Fit.File:Parsed <MessageType.unknown_233: 233>
DEBUG:Fit.File:Record 25: consumed 369 of 1814 True
DEBUG:Fit.File:Parsed record RecordHeader: Local data message 1 (Compressed 0)
DEBUG:Fit.File:  Data [1]: DataMessage: <MessageType.stress_level: 227>: stress_level_time(2018-02-14 21:56:00 (887579760)), unknown_4(1), stress_level_value(32), unknown_2(-9), unknown_3(33),
DEBUG:Fit.File:Parsed <MessageType.stress_level: 227>
DEBUG:Fit.File:Record 26: consumed 379 of 1814 True
DEBUG:Fit.File:Parsed record RecordHeader: Local data message 2 (Compressed 0)
DEBUG:Fit.File:  Data [2]: DataMessage: <MessageType.monitoring: 55>: heart_rate(64 bpm), timestamp_16(25772 s),
DEBUG:Fit.File:Parsed <MessageType.monitoring: 55>
DEBUG:Fit.File:Record 27: consumed 383 of 1814 True
DEBUG:Fit.File:Parsed record RecordHeader: Local data message 0 (Compressed 0)
DEBUG:Fit.File:  Data [0]: DataMessage: <MessageType.unknown_233: 233>: unknown_2(~ ([0, 0, 126, 240])),
DEBUG:Fit.File:Parsed <MessageType.unknown_233: 233>
DEBUG:Fit.File:Record 28: consumed 388 of 1814 True
DEBUG:Fit.File:Parsed record RecordHeader: Local data message 1 (Compressed 0)
DEBUG:Fit.File:  Data [1]: DataMessage: <MessageType.stress_level: 227>: stress_level_time(2018-02-14 21:57:00 (887579820)), unknown_4(1), stress_level_value(27), unknown_2(-2), unknown_3(33),
DEBUG:Fit.File:Parsed <MessageType.stress_level: 227>
DEBUG:Fit.File:Record 29: consumed 398 of 1814 True
DEBUG:Fit.File:Parsed record RecordHeader: Local data message 2 (Compressed 0)
DEBUG:Fit.File:  Data [2]: DataMessage: <MessageType.monitoring: 55>: heart_rate(65 bpm), timestamp_16(25832 s),
DEBUG:Fit.File:Parsed <MessageType.monitoring: 55>
DEBUG:Fit.File:Record 30: consumed 402 of 1814 True
DEBUG:Fit.File:Parsed record RecordHeader: Local data message 0 (Compressed 0)
DEBUG:Fit.File:  Data [0]: DataMessage: <MessageType.unknown_233: 233>: unknown_2( ([2, 192, 0, 8])),
DEBUG:Fit.File:Parsed <MessageType.unknown_233: 233>
DEBUG:Fit.File:Record 31: consumed 407 of 1814 True
DEBUG:Fit.File:Parsed record RecordHeader: Local data message 1 (Compressed 0)
DEBUG:Fit.File:  Data [1]: DataMessage: <MessageType.stress_level: 227>: stress_level_time(2018-02-14 21:58:00 (887579880)), unknown_4(1), stress_level_value(28), unknown_2(-4), unknown_3(33),
DEBUG:Fit.File:Parsed <MessageType.stress_level: 227>
DEBUG:Fit.File:Record 32: consumed 417 of 1814 True
DEBUG:Fit.File:Parsed record RecordHeader: Local data message 2 (Compressed 0)
DEBUG:Fit.File:  Data [2]: DataMessage: <MessageType.monitoring: 55>: heart_rate(66 bpm), timestamp_16(25892 s),
DEBUG:Fit.File:Parsed <MessageType.monitoring: 55>
DEBUG:Fit.File:Record 33: consumed 421 of 1814 True
DEBUG:Fit.File:Parsed record RecordHeader: Local data message 0 (Compressed 0)
DEBUG:Fit.File:  Data [0]: DataMessage: <MessageType.unknown_233: 233>: unknown_2(80 ([56, 48, 0, 16])),
DEBUG:Fit.File:Parsed <MessageType.unknown_233: 233>
DEBUG:Fit.File:Record 34: consumed 426 of 1814 True
DEBUG:Fit.File:Parsed record RecordHeader: Local data message 1 (Compressed 0)
DEBUG:Fit.File:  Data [1]: DataMessage: <MessageType.stress_level: 227>: stress_level_time(2018-02-14 21:59:00 (887579940)), unknown_4(1), stress_level_value(29), unknown_2(-5), unknown_3(33),
DEBUG:Fit.File:Parsed <MessageType.stress_level: 227>
DEBUG:Fit.File:Record 35: consumed 436 of 1814 True
DEBUG:Fit.File:Parsed record RecordHeader: Local data message 0 (Compressed 0)
DEBUG:Fit.File:  Data [0]: DataMessage: <MessageType.unknown_233: 233>: unknown_2( ([0, 0, 0, 24])),
DEBUG:Fit.File:Parsed <MessageType.unknown_233: 233>
DEBUG:Fit.File:Record 36: consumed 441 of 1814 True
DEBUG:Fit.File:Parsed record RecordHeader: Local data message 1 (Compressed 0)
DEBUG:Fit.File:  Data [1]: DataMessage: <MessageType.stress_level: 227>: stress_level_time(2018-02-14 22:00:00 (887580000)), unknown_4(1), stress_level_value(27), unknown_2(-3), unknown_3(33),
DEBUG:Fit.File:Parsed <MessageType.stress_level: 227>
DEBUG:Fit.File:Record 37: consumed 451 of 1814 True
DEBUG:Fit.File:Parsed record RecordHeader: Local data message 0 (Compressed 0)
DEBUG:Fit.File:  Data [0]: DataMessage: <MessageType.unknown_233: 233>: unknown_2( ([7, 254, 7, 0])),
DEBUG:Fit.File:Parsed <MessageType.unknown_233: 233>
DEBUG:Fit.File:Record 38: consumed 456 of 1814 True
DEBUG:Fit.File:Parsed record RecordHeader: Local data message 1 (Compressed 0)
DEBUG:Fit.File:  Data [1]: DataMessage: <MessageType.stress_level: 227>: stress_level_time(2018-02-14 22:01:00 (887580060)), unknown_4(1), stress_level_value(27), unknown_2(-3), unknown_3(33),
DEBUG:Fit.File:Parsed <MessageType.stress_level: 227>
DEBUG:Fit.File:Record 39: consumed 466 of 1814 True
DEBUG:Fit.File:Parsed record RecordHeader: Local data message 2 (Compressed 0)
DEBUG:Fit.File:  Data [2]: DataMessage: <MessageType.monitoring: 55>: heart_rate(65 bpm), timestamp_16(26072 s),
DEBUG:Fit.File:Parsed <MessageType.monitoring: 55>
DEBUG:Fit.File:Record 40: consumed 470 of 1814 True
DEBUG:Fit.File:Parsed record RecordHeader: Local data message 0 (Compressed 0)
DEBUG:Fit.File:  Data [0]: DataMessage: <MessageType.unknown_233: 233>: unknown_2( ([2, 192, 0, 8])),
DEBUG:Fit.File:Parsed <MessageType.unknown_233: 233>
DEBUG:Fit.File:Record 41: consumed 475 of 1814 True
DEBUG:Fit.File:Parsed record RecordHeader: Local data message 1 (Compressed 0)
DEBUG:Fit.File:  Data [1]: DataMessage: <MessageType.stress_level: 227>: stress_level_time(2018-02-14 22:02:00 (887580120)), unknown_4(1), stress_level_value(24), unknown_2(5), unknown_3(33),
DEBUG:Fit.File:Parsed <MessageType.stress_level: 227>
DEBUG:Fit.File:Record 42: consumed 485 of 1814 True
DEBUG:Fit.File:Parsed record RecordHeader: Local data message 2 (Compressed 0)
DEBUG:Fit.File:  Data [2]: DataMessage: <MessageType.monitoring: 55>: heart_rate(63 bpm), timestamp_16(26132 s),
DEBUG:Fit.File:Parsed <MessageType.monitoring: 55>
DEBUG:Fit.File:Record 43: consumed 489 of 1814 True
DEBUG:Fit.File:Parsed record RecordHeader: Local data message 0 (Compressed 0)
DEBUG:Fit.File:  Data [0]: DataMessage: <MessageType.unknown_233: 233>: unknown_2(R
 ([82, 10, 232, 224])),
DEBUG:Fit.File:Parsed <MessageType.unknown_233: 233>
DEBUG:Fit.File:Record 44: consumed 494 of 1814 True
DEBUG:Fit.File:Parsed record RecordHeader: Local data message 1 (Compressed 0)
DEBUG:Fit.File:  Data [1]: DataMessage: <MessageType.stress_level: 227>: stress_level_time(2018-02-14 22:03:00 (887580180)), unknown_4(1), stress_level_value(28), unknown_2(-4), unknown_3(33),
DEBUG:Fit.File:Parsed <MessageType.stress_level: 227>
DEBUG:Fit.File:Record 45: consumed 504 of 1814 True
DEBUG:Fit.File:Parsed record RecordHeader: Local data message 0 (Compressed 0)
DEBUG:Fit.File:  Data [0]: DataMessage: <MessageType.unknown_233: 233>: unknown_2(80 ([56, 48, 0, 16])),
DEBUG:Fit.File:Parsed <MessageType.unknown_233: 233>
DEBUG:Fit.File:Record 46: consumed 509 of 1814 True
DEBUG:Fit.File:Parsed record RecordHeader: Local data message 1 (Compressed 0)
DEBUG:Fit.File:  Data [1]: DataMessage: <MessageType.stress_level: 227>: stress_level_time(2018-02-14 22:04:00 (887580240)), unknown_4(1), stress_level_value(27), unknown_2(-3), unknown_3(33),
DEBUG:Fit.File:Parsed <MessageType.stress_level: 227>
DEBUG:Fit.File:Record 47: consumed 519 of 1814 True
DEBUG:Fit.File:Parsed record RecordHeader: Local data message 2 (Compressed 0)
DEBUG:Fit.File:  Data [2]: DataMessage: <MessageType.monitoring: 55>: heart_rate(61 bpm), timestamp_16(26252 s),
DEBUG:Fit.File:Parsed <MessageType.monitoring: 55>
DEBUG:Fit.File:Record 48: consumed 523 of 1814 True
DEBUG:Fit.File:Parsed record RecordHeader: Local data message 0 (Compressed 0)
DEBUG:Fit.File:  Data [0]: DataMessage: <MessageType.unknown_233: 233>: unknown_2(v ([0, 128, 118, 240])),
DEBUG:Fit.File:Parsed <MessageType.unknown_233: 233>
DEBUG:Fit.File:Record 49: consumed 528 of 1814 True
DEBUG:Fit.File:Parsed record RecordHeader: Local data message 1 (Compressed 0)
DEBUG:Fit.File:  Data [1]: DataMessage: <MessageType.stress_level: 227>: stress_level_time(2018-02-14 22:05:00 (887580300)), unknown_4(1), stress_level_value(27), unknown_2(-2), unknown_3(33),
DEBUG:Fit.File:Parsed <MessageType.stress_level: 227>
DEBUG:Fit.File:Record 50: consumed 538 of 1814 True
DEBUG:Fit.File:Parsed record RecordHeader: Local data message 2 (Compressed 0)
DEBUG:Fit.File:  Data [2]: DataMessage: <MessageType.monitoring: 55>: heart_rate(62 bpm), timestamp_16(26312 s),
DEBUG:Fit.File:Parsed <MessageType.monitoring: 55>
DEBUG:Fit.File:Record 51: consumed 542 of 1814 True
DEBUG:Fit.File:Parsed record RecordHeader: Local data message 0 (Compressed 0)
DEBUG:Fit.File:  Data [0]: DataMessage: <MessageType.unknown_233: 233>: unknown_2( ([0, 0, 0, 24])),
DEBUG:Fit.File:Parsed <MessageType.unknown_233: 233>
DEBUG:Fit.File:Record 52: consumed 547 of 1814 True
DEBUG:Fit.File:Parsed record RecordHeader: Local data message 1 (Compressed 0)
DEBUG:Fit.File:  Data [1]: DataMessage: <MessageType.stress_level: 227>: stress_level_time(2018-02-14 22:06:00 (887580360)), unknown_4(1), stress_level_value(14), unknown_2(42), unknown_3(33),
DEBUG:Fit.File:Parsed <MessageType.stress_level: 227>
DEBUG:Fit.File:Record 53: consumed 557 of 1814 True
DEBUG:Fit.File:Parsed record RecordHeader: Local data message 2 (Compressed 0)
DEBUG:Fit.File:  Data [2]: DataMessage: <MessageType.monitoring: 55>: heart_rate(59 bpm), timestamp_16(26372 s),
DEBUG:Fit.File:Parsed <MessageType.monitoring: 55>
DEBUG:Fit.File:Record 54: consumed 561 of 1814 True
DEBUG:Fit.File:Parsed record RecordHeader: Local data message 0 (Compressed 0)
DEBUG:Fit.File:  Data [0]: DataMessage: <MessageType.unknown_233: 233>: unknown_2( ([7, 254, 7, 0])),
DEBUG:Fit.File:Parsed <MessageType.unknown_233: 233>
DEBUG:Fit.File:Record 55: consumed 566 of 1814 True
DEBUG:Fit.File:Parsed record RecordHeader: Local data message 1 (Compressed 0)
DEBUG:Fit.File:  Data [1]: DataMessage: <MessageType.stress_level: 227>: stress_level_time(2018-02-14 22:07:00 (887580420)), unknown_4(1), stress_level_value(-1), unknown_2(101), unknown_3(33),
DEBUG:Fit.File:Parsed <MessageType.stress_level: 227>
DEBUG:Fit.File:Record 56: consumed 576 of 1814 True
DEBUG:Fit.File:Parsed record RecordHeader: Local data message 2 (Compressed 0)
DEBUG:Fit.File:  Data [2]: DataMessage: <MessageType.monitoring: 55>: heart_rate(61 bpm), timestamp_16(26432 s),
DEBUG:Fit.File:Parsed <MessageType.monitoring: 55>
DEBUG:Fit.File:Record 57: consumed 580 of 1814 True
DEBUG:Fit.File:Parsed record RecordHeader: Local data message 0 (Compressed 0)
DEBUG:Fit.File:  Data [0]: DataMessage: <MessageType.unknown_233: 233>: unknown_2( ([2, 192, 0, 8])),
DEBUG:Fit.File:Parsed <MessageType.unknown_233: 233>
DEBUG:Fit.File:Record 58: consumed 585 of 1814 True
DEBUG:Fit.File:Parsed record RecordHeader: Local data message 1 (Compressed 0)
DEBUG:Fit.File:  Data [1]: DataMessage: <MessageType.stress_level: 227>: stress_level_time(2018-02-14 22:08:00 (887580480)), unknown_4(1), stress_level_value(30), unknown_2(-7), unknown_3(33),
DEBUG:Fit.File:Parsed <MessageType.stress_level: 227>
DEBUG:Fit.File:Record 59: consumed 595 of 1814 True
DEBUG:Fit.File:Parsed record RecordHeader: Local data message 2 (Compressed 0)
DEBUG:Fit.File:  Data [2]: DataMessage: <MessageType.monitoring: 55>: heart_rate(66 bpm), timestamp_16(26492 s),
DEBUG:Fit.File:Parsed <MessageType.monitoring: 55>
DEBUG:Fit.File:Record 60: consumed 599 of 1814 True
DEBUG:Fit.File:Parsed record RecordHeader: Local data message 0 (Compressed 0)
DEBUG:Fit.File:  Data [0]: DataMessage: <MessageType.unknown_233: 233>: unknown_2(80 ([56, 48, 0, 16])),
DEBUG:Fit.File:Parsed <MessageType.unknown_233: 233>
DEBUG:Fit.File:Record 61: consumed 604 of 1814 True
DEBUG:Fit.File:Parsed record RecordHeader: Local data message 1 (Compressed 0)
DEBUG:Fit.File:  Data [1]: DataMessage: <MessageType.stress_level: 227>: stress_level_time(2018-02-14 22:09:00 (887580540)), unknown_4(1), stress_level_value(27), unknown_2(-2), unknown_3(33),
DEBUG:Fit.File:Parsed <MessageType.stress_level: 227>
DEBUG:Fit.File:Record 62: consumed 614 of 1814 True
DEBUG:Fit.File:Parsed record RecordHeader: Local data message 2 (Compressed 0)
DEBUG:Fit.File:  Data [2]: DataMessage: <MessageType.monitoring: 55>: heart_rate(62 bpm), timestamp_16(26552 s),
DEBUG:Fit.File:Parsed <MessageType.monitoring: 55>
DEBUG:Fit.File:Record 63: consumed 618 of 1814 True
DEBUG:Fit.File:Parsed record RecordHeader: Local data message 0 (Compressed 0)
DEBUG:Fit.File:  Data [0]: DataMessage: <MessageType.unknown_233: 233>: unknown_2( ([0, 0, 0, 24])),
DEBUG:Fit.File:Parsed <MessageType.unknown_233: 233>
DEBUG:Fit.File:Record 64: consumed 623 of 1814 True
DEBUG:Fit.File:Parsed record RecordHeader: Local data message 1 (Compressed 0)
DEBUG:Fit.File:  Data [1]: DataMessage: <MessageType.stress_level: 227>: stress_level_time(2018-02-14 22:10:00 (887580600)), unknown_4(1), stress_level_value(27), unknown_2(-2), unknown_3(33),
DEBUG:Fit.File:Parsed <MessageType.stress_level: 227>
DEBUG:Fit.File:Record 65: consumed 633 of 1814 True
DEBUG:Fit.File:Parsed record RecordHeader: Local data message 2 (Compressed 0)
DEBUG:Fit.File:  Data [2]: DataMessage: <MessageType.monitoring: 55>: heart_rate(63 bpm), timestamp_16(26612 s),
DEBUG:Fit.File:Parsed <MessageType.monitoring: 55>
DEBUG:Fit.File:Record 66: consumed 637 of 1814 True
DEBUG:Fit.File:Parsed record RecordHeader: Local data message 0 (Compressed 0)
DEBUG:Fit.File:  Data [0]: DataMessage: <MessageType.unknown_233: 233>: unknown_2( ([7, 246, 7, 0])),
DEBUG:Fit.File:Parsed <MessageType.unknown_233: 233>
DEBUG:Fit.File:Record 67: consumed 642 of 1814 True
DEBUG:Fit.File:Parsed record RecordHeader: Local data message 1 (Compressed 0)
DEBUG:Fit.File:  Data [1]: DataMessage: <MessageType.stress_level: 227>: stress_level_time(2018-02-14 22:11:00 (887580660)), unknown_4(1), stress_level_value(27), unknown_2(-2), unknown_3(33),
DEBUG:Fit.File:Parsed <MessageType.stress_level: 227>
DEBUG:Fit.File:Record 68: consumed 652 of 1814 True
DEBUG:Fit.File:Parsed record RecordHeader: Local data message 2 (Compressed 0)
DEBUG:Fit.File:  Data [2]: DataMessage: <MessageType.monitoring: 55>: heart_rate(61 bpm), timestamp_16(26672 s),
DEBUG:Fit.File:Parsed <MessageType.monitoring: 55>
DEBUG:Fit.File:Record 69: consumed 656 of 1814 True
DEBUG:Fit.File:Parsed record RecordHeader: Local data message 0 (Compressed 0)
DEBUG:Fit.File:  Data [0]: DataMessage: <MessageType.unknown_233: 233>: unknown_2( ([2, 192, 0, 8])),
DEBUG:Fit.File:Parsed <MessageType.unknown_233: 233>
DEBUG:Fit.File:Record 70: consumed 661 of 1814 True
DEBUG:Fit.File:Parsed record RecordHeader: Local data message 1 (Compressed 0)
DEBUG:Fit.File:  Data [1]: DataMessage: <MessageType.stress_level: 227>: stress_level_time(2018-02-14 22:12:00 (887580720)), unknown_4(1), stress_level_value(27), unknown_2(-2), unknown_3(33),
DEBUG:Fit.File:Parsed <MessageType.stress_level: 227>
DEBUG:Fit.File:Record 71: consumed 671 of 1814 True
DEBUG:Fit.File:Parsed record RecordHeader: Local data message 2 (Compressed 0)
DEBUG:Fit.File:  Data [2]: DataMessage: <MessageType.monitoring: 55>: heart_rate(68 bpm), timestamp_16(26732 s),
DEBUG:Fit.File:Parsed <MessageType.monitoring: 55>
DEBUG:Fit.File:Record 72: consumed 675 of 1814 True
DEBUG:Fit.File:Parsed record RecordHeader: Local data message 0 (Compressed 0)
DEBUG:Fit.File:  Data [0]: DataMessage: <MessageType.unknown_233: 233>: unknown_2(R
 ([82, 10, 232, 224])),
DEBUG:Fit.File:Parsed <MessageType.unknown_233: 233>
DEBUG:Fit.File:Record 73: consumed 680 of 1814 True
DEBUG:Fit.File:Parsed record RecordHeader: Local data message 1 (Compressed 0)
DEBUG:Fit.File:  Data [1]: DataMessage: <MessageType.stress_level: 227>: stress_level_time(2018-02-14 22:13:00 (887580780)), unknown_4(1), stress_level_value(27), unknown_2(-3), unknown_3(33),
DEBUG:Fit.File:Parsed <MessageType.stress_level: 227>
DEBUG:Fit.File:Record 74: consumed 690 of 1814 True
DEBUG:Fit.File:Parsed record RecordHeader: Local data message 2 (Compressed 0)
DEBUG:Fit.File:  Data [2]: DataMessage: <MessageType.monitoring: 55>: heart_rate(66 bpm), timestamp_16(26792 s),
DEBUG:Fit.File:Parsed <MessageType.monitoring: 55>
DEBUG:Fit.File:Record 75: consumed 694 of 1814 True
DEBUG:Fit.File:Parsed record RecordHeader: Local data message 0 (Compressed 0)
DEBUG:Fit.File:  Data [0]: DataMessage: <MessageType.unknown_233: 233>: unknown_2(vx ([0, 118, 120, 240])),
DEBUG:Fit.File:Parsed <MessageType.unknown_233: 233>
DEBUG:Fit.File:Record 76: consumed 699 of 1814 True
DEBUG:Fit.File:Parsed record RecordHeader: Local data message 1 (Compressed 0)
DEBUG:Fit.File:  Data [1]: DataMessage: <MessageType.stress_level: 227>: stress_level_time(2018-02-14 22:14:00 (887580840)), unknown_4(1), stress_level_value(28), unknown_2(-4), unknown_3(33),
DEBUG:Fit.File:Parsed <MessageType.stress_level: 227>
DEBUG:Fit.File:Record 77: consumed 709 of 1814 True
DEBUG:Fit.File:Parsed record RecordHeader: Local data message 2 (Compressed 0)
DEBUG:Fit.File:  Data [2]: DataMessage: <MessageType.monitoring: 55>: heart_rate(60 bpm), timestamp_16(26852 s),
DEBUG:Fit.File:Parsed <MessageType.monitoring: 55>
DEBUG:Fit.File:Record 78: consumed 713 of 1814 True
DEBUG:Fit.File:Parsed record RecordHeader: Local data message 0 (Compressed 0)
DEBUG:Fit.File:  Data [0]: DataMessage: <MessageType.unknown_233: 233>: unknown_2(6. ([54, 46, 0, 16])),
DEBUG:Fit.File:Parsed <MessageType.unknown_233: 233>
DEBUG:Fit.File:Record 79: consumed 718 of 1814 True
DEBUG:Fit.File:Parsed record RecordHeader: Local data message 1 (Compressed 0)
DEBUG:Fit.File:  Data [1]: DataMessage: <MessageType.stress_level: 227>: stress_level_time(2018-02-14 22:15:00 (887580900)), unknown_4(1), stress_level_value(20), unknown_2(19), unknown_3(33),
DEBUG:Fit.File:Parsed <MessageType.stress_level: 227>
DEBUG:Fit.File:Record 80: consumed 728 of 1814 True
DEBUG:Fit.File:Parsed record RecordHeader: Local data message 2 (Compressed 0)
DEBUG:Fit.File:  Data [2]: DataMessage: <MessageType.monitoring: 55>: heart_rate(59 bpm), timestamp_16(26912 s),
DEBUG:Fit.File:Parsed <MessageType.monitoring: 55>
DEBUG:Fit.File:Record 81: consumed 732 of 1814 True
DEBUG:Fit.File:Parsed record RecordHeader: Local data message 0 (Compressed 0)
DEBUG:Fit.File:  Data [0]: DataMessage: <MessageType.unknown_233: 233>: unknown_2( ([0, 0, 0, 24])),
DEBUG:Fit.File:Parsed <MessageType.unknown_233: 233>
DEBUG:Fit.File:Record 82: consumed 737 of 1814 True
DEBUG:Fit.File:Parsed record RecordHeader: Local data message 1 (Compressed 0)
DEBUG:Fit.File:  Data [1]: DataMessage: <MessageType.stress_level: 227>: stress_level_time(2018-02-14 22:16:00 (887580960)), unknown_4(1), stress_level_value(24), unknown_2(5), unknown_3(33),
DEBUG:Fit.File:Parsed <MessageType.stress_level: 227>
DEBUG:Fit.File:Record 83: consumed 747 of 1814 True
DEBUG:Fit.File:Parsed record RecordHeader: Local data message 2 (Compressed 0)
DEBUG:Fit.File:  Data [2]: DataMessage: <MessageType.monitoring: 55>: heart_rate(66 bpm), timestamp_16(26972 s),
DEBUG:Fit.File:Parsed <MessageType.monitoring: 55>
DEBUG:Fit.File:Record 84: consumed 751 of 1814 True
DEBUG:Fit.File:Parsed record RecordHeader: Local data message 0 (Compressed 0)
DEBUG:Fit.File:  Data [0]: DataMessage: <MessageType.unknown_233: 233>: unknown_2( ([7, 254, 7, 0])),
DEBUG:Fit.File:Parsed <MessageType.unknown_233: 233>
DEBUG:Fit.File:Record 85: consumed 756 of 1814 True
DEBUG:Fit.File:Parsed record RecordHeader: Local data message 1 (Compressed 0)
DEBUG:Fit.File:  Data [1]: DataMessage: <MessageType.stress_level: 227>: stress_level_time(2018-02-14 22:17:00 (887581020)), unknown_4(1), stress_level_value(24), unknown_2(3), unknown_3(33),
DEBUG:Fit.File:Parsed <MessageType.stress_level: 227>
DEBUG:Fit.File:Record 86: consumed 766 of 1814 True
DEBUG:Fit.File:Parsed record RecordHeader: Local data message 2 (Compressed 0)
DEBUG:Fit.File:  Data [2]: DataMessage: <MessageType.monitoring: 55>: heart_rate(61 bpm), timestamp_16(27032 s),
DEBUG:Fit.File:Parsed <MessageType.monitoring: 55>
DEBUG:Fit.File:Record 87: consumed 770 of 1814 True
DEBUG:Fit.File:Parsed record RecordHeader: Local definition message 3 (Compressed 0)
DEBUG:Fit.File:  Definition [3]: DefinitionMessage: <MessageType.event: 21> 7 Little_Endian fields
DEBUG:Fit.File:Record 88: consumed 797 of 1814 True
DEBUG:Fit.File:Parsed record RecordHeader: Local data message 3 (Compressed 0)
DEBUG:Fit.File:  Data [3]: DataMessage: <MessageType.event: 21>: ts_15(2018-02-14 22:38:59 (887578740)), timestamp(2018-02-14 23:17:59 (887581080)), unknown_14(10), unknown_16(None (255) [invalid]), EventType(EventType.marker (3)), data16(24), event(54),
DEBUG:Fit.File:Parsed <MessageType.event: 21>
DEBUG:Fit.File:Record 89: consumed 812 of 1814 True
DEBUG:Fit.File:Parsed record RecordHeader: Local data message 0 (Compressed 0)
DEBUG:Fit.File:  Data [0]: DataMessage: <MessageType.unknown_233: 233>: unknown_2( ([2, 192, 0, 8])),
DEBUG:Fit.File:Parsed <MessageType.unknown_233: 233>
DEBUG:Fit.File:Record 90: consumed 817 of 1814 True
DEBUG:Fit.File:Parsed record RecordHeader: Local data message 1 (Compressed 0)
DEBUG:Fit.File:  Data [1]: DataMessage: <MessageType.stress_level: 227>: stress_level_time(2018-02-14 22:18:00 (887581080)), unknown_4(1), stress_level_value(29), unknown_2(-5), unknown_3(33),
DEBUG:Fit.File:Parsed <MessageType.stress_level: 227>
DEBUG:Fit.File:Record 91: consumed 827 of 1814 True
DEBUG:Fit.File:Parsed record RecordHeader: Local data message 2 (Compressed 0)
DEBUG:Fit.File:  Data [2]: DataMessage: <MessageType.monitoring: 55>: heart_rate(64 bpm), timestamp_16(27092 s),
DEBUG:Fit.File:Parsed <MessageType.monitoring: 55>
DEBUG:Fit.File:Record 92: consumed 831 of 1814 True
DEBUG:Fit.File:Parsed record RecordHeader: Local data message 0 (Compressed 0)
DEBUG:Fit.File:  Data [0]: DataMessage: <MessageType.unknown_233: 233>: unknown_2(6. ([54, 46, 0, 16])),
DEBUG:Fit.File:Parsed <MessageType.unknown_233: 233>
DEBUG:Fit.File:Record 93: consumed 836 of 1814 True
DEBUG:Fit.File:Parsed record RecordHeader: Local data message 1 (Compressed 0)
DEBUG:Fit.File:  Data [1]: DataMessage: <MessageType.stress_level: 227>: stress_level_time(2018-02-14 22:19:00 (887581140)), unknown_4(1), stress_level_value(20), unknown_2(19), unknown_3(33),
DEBUG:Fit.File:Parsed <MessageType.stress_level: 227>
DEBUG:Fit.File:Record 94: consumed 846 of 1814 True
DEBUG:Fit.File:Parsed record RecordHeader: Local data message 2 (Compressed 0)
DEBUG:Fit.File:  Data [2]: DataMessage: <MessageType.monitoring: 55>: heart_rate(61 bpm), timestamp_16(27152 s),
DEBUG:Fit.File:Parsed <MessageType.monitoring: 55>
DEBUG:Fit.File:Record 95: consumed 850 of 1814 True
DEBUG:Fit.File:Parsed record RecordHeader: Local data message 0 (Compressed 0)
DEBUG:Fit.File:  Data [0]: DataMessage: <MessageType.unknown_233: 233>: unknown_2( ([0, 0, 0, 24])),
DEBUG:Fit.File:Parsed <MessageType.unknown_233: 233>
DEBUG:Fit.File:Record 96: consumed 855 of 1814 True
DEBUG:Fit.File:Parsed record RecordHeader: Local data message 1 (Compressed 0)
DEBUG:Fit.File:  Data [1]: DataMessage: <MessageType.stress_level: 227>: stress_level_time(2018-02-14 22:20:00 (887581200)), unknown_4(1), stress_level_value(20), unknown_2(21), unknown_3(33),
DEBUG:Fit.File:Parsed <MessageType.stress_level: 227>
DEBUG:Fit.File:Record 97: consumed 865 of 1814 True
DEBUG:Fit.File:Parsed record RecordHeader: Local data message 2 (Compressed 0)
DEBUG:Fit.File:  Data [2]: DataMessage: <MessageType.monitoring: 55>: heart_rate(64 bpm), timestamp_16(27212 s),
DEBUG:Fit.File:Parsed <MessageType.monitoring: 55>
DEBUG:Fit.File:Record 98: consumed 869 of 1814 True
DEBUG:Fit.File:Parsed record RecordHeader: Local data message 0 (Compressed 0)
DEBUG:Fit.File:  Data [0]: DataMessage: <MessageType.unknown_233: 233>: unknown_2( ([7, 254, 7, 0])),
DEBUG:Fit.File:Parsed <MessageType.unknown_233: 233>
DEBUG:Fit.File:Record 99: consumed 874 of 1814 True
DEBUG:Fit.File:Parsed record RecordHeader: Local data message 1 (Compressed 0)
DEBUG:Fit.File:  Data [1]: DataMessage: <MessageType.stress_level: 227>: stress_level_time(2018-02-14 22:21:00 (887581260)), unknown_4(1), stress_level_value(11), unknown_2(54), unknown_3(33),
DEBUG:Fit.File:Parsed <MessageType.stress_level: 227>
DEBUG:Fit.File:Record 100: consumed 884 of 1814 True
DEBUG:Fit.File:Parsed record RecordHeader: Local data message 2 (Compressed 0)
DEBUG:Fit.File:  Data [2]: DataMessage: <MessageType.monitoring: 55>: heart_rate(59 bpm), timestamp_16(27272 s),
DEBUG:Fit.File:Parsed <MessageType.monitoring: 55>
DEBUG:Fit.File:Record 101: consumed 888 of 1814 True
DEBUG:Fit.File:Parsed record RecordHeader: Local data message 0 (Compressed 0)
DEBUG:Fit.File:  Data [0]: DataMessage: <MessageType.unknown_233: 233>: unknown_2(  ([0, 32, 154, 232])),
DEBUG:Fit.File:Parsed <MessageType.unknown_233: 233>
DEBUG:Fit.File:Record 102: consumed 893 of 1814 True
DEBUG:Fit.File:Parsed record RecordHeader: Local data message 1 (Compressed 0)
DEBUG:Fit.File:  Data [1]: DataMessage: <MessageType.stress_level: 227>: stress_level_time(2018-02-14 22:22:00 (887581320)), unknown_4(1), stress_level_value(20), unknown_2(21), unknown_3(33),
DEBUG:Fit.File:Parsed <MessageType.stress_level: 227>
DEBUG:Fit.File:Record 103: consumed 903 of 1814 True
DEBUG:Fit.File:Parsed record RecordHeader: Local data message 2 (Compressed 0)
DEBUG:Fit.File:  Data [2]: DataMessage: <MessageType.monitoring: 55>: heart_rate(58 bpm), timestamp_16(27332 s),
DEBUG:Fit.File:Parsed <MessageType.monitoring: 55>
DEBUG:Fit.File:Record 104: consumed 907 of 1814 True
DEBUG:Fit.File:Parsed record RecordHeader: Local data message 0 (Compressed 0)
DEBUG:Fit.File:  Data [0]: DataMessage: <MessageType.unknown_233: 233>: unknown_2(t ([0, 0, 116, 240])),
DEBUG:Fit.File:Parsed <MessageType.unknown_233: 233>
DEBUG:Fit.File:Record 105: consumed 912 of 1814 True
DEBUG:Fit.File:Parsed record RecordHeader: Local data message 1 (Compressed 0)
DEBUG:Fit.File:  Data [1]: DataMessage: <MessageType.stress_level: 227>: stress_level_time(2018-02-14 22:23:00 (887581380)), unknown_4(1), stress_level_value(14), unknown_2(43), unknown_3(34),
DEBUG:Fit.File:Parsed <MessageType.stress_level: 227>
DEBUG:Fit.File:Record 106: consumed 922 of 1814 True
DEBUG:Fit.File:Parsed record RecordHeader: Local data message 0 (Compressed 0)
DEBUG:Fit.File:  Data [0]: DataMessage: <MessageType.unknown_233: 233>: unknown_2(R
 ([82, 10, 232, 224])),
DEBUG:Fit.File:Parsed <MessageType.unknown_233: 233>
DEBUG:Fit.File:Record 107: consumed 927 of 1814 True
DEBUG:Fit.File:Parsed record RecordHeader: Local data message 1 (Compressed 0)
DEBUG:Fit.File:  Data [1]: DataMessage: <MessageType.stress_level: 227>: stress_level_time(2018-02-14 22:24:00 (887581440)), unknown_4(1), stress_level_value(17), unknown_2(33), unknown_3(34),
DEBUG:Fit.File:Parsed <MessageType.stress_level: 227>
DEBUG:Fit.File:Record 108: consumed 937 of 1814 True
DEBUG:Fit.File:Parsed record RecordHeader: Local data message 2 (Compressed 0)
DEBUG:Fit.File:  Data [2]: DataMessage: <MessageType.monitoring: 55>: heart_rate(60 bpm), timestamp_16(27452 s),
DEBUG:Fit.File:Parsed <MessageType.monitoring: 55>
DEBUG:Fit.File:Record 109: consumed 941 of 1814 True
DEBUG:Fit.File:Parsed record RecordHeader: Local data message 0 (Compressed 0)
DEBUG:Fit.File:  Data [0]: DataMessage: <MessageType.unknown_233: 233>: unknown_2( ([18, 240, 3, 8])),
DEBUG:Fit.File:Parsed <MessageType.unknown_233: 233>
DEBUG:Fit.File:Record 110: consumed 946 of 1814 True
DEBUG:Fit.File:Parsed record RecordHeader: Local data message 1 (Compressed 0)
DEBUG:Fit.File:  Data [1]: DataMessage: <MessageType.stress_level: 227>: stress_level_time(2018-02-14 22:25:00 (887581500)), unknown_4(1), stress_level_value(-1), unknown_2(101), unknown_3(34),
DEBUG:Fit.File:Parsed <MessageType.stress_level: 227>
DEBUG:Fit.File:Record 111: consumed 956 of 1814 True
DEBUG:Fit.File:Parsed record RecordHeader: Local data message 2 (Compressed 0)
DEBUG:Fit.File:  Data [2]: DataMessage: <MessageType.monitoring: 55>: heart_rate(59 bpm), timestamp_16(27512 s),
DEBUG:Fit.File:Parsed <MessageType.monitoring: 55>
DEBUG:Fit.File:Record 112: consumed 960 of 1814 True
DEBUG:Fit.File:Parsed record RecordHeader: Local data message 0 (Compressed 0)
DEBUG:Fit.File:  Data [0]: DataMessage: <MessageType.unknown_233: 233>: unknown_2(6. ([54, 46, 0, 16])),
DEBUG:Fit.File:Parsed <MessageType.unknown_233: 233>
DEBUG:Fit.File:Record 113: consumed 965 of 1814 True
DEBUG:Fit.File:Parsed record RecordHeader: Local data message 1 (Compressed 0)
DEBUG:Fit.File:  Data [1]: DataMessage: <MessageType.stress_level: 227>: stress_level_time(2018-02-14 22:26:00 (887581560)), unknown_4(1), stress_level_value(21), unknown_2(14), unknown_3(34),
DEBUG:Fit.File:Parsed <MessageType.stress_level: 227>
DEBUG:Fit.File:Record 114: consumed 975 of 1814 True
DEBUG:Fit.File:Parsed record RecordHeader: Local data message 2 (Compressed 0)
DEBUG:Fit.File:  Data [2]: DataMessage: <MessageType.monitoring: 55>: heart_rate(64 bpm), timestamp_16(27572 s),
DEBUG:Fit.File:Parsed <MessageType.monitoring: 55>
DEBUG:Fit.File:Record 115: consumed 979 of 1814 True
DEBUG:Fit.File:Parsed record RecordHeader: Local data message 0 (Compressed 0)
DEBUG:Fit.File:  Data [0]: DataMessage: <MessageType.unknown_233: 233>: unknown_2( ([0, 0, 0, 24])),
DEBUG:Fit.File:Parsed <MessageType.unknown_233: 233>
DEBUG:Fit.File:Record 116: consumed 984 of 1814 True
DEBUG:Fit.File:Parsed record RecordHeader: Local definition message 4 (Compressed 0)
DEBUG:Fit.File:  Definition [4]: DefinitionMessage: <MessageType.monitoring: 55> 2 Little_Endian fields
DEBUG:Fit.File:Record 117: consumed 996 of 1814 True
DEBUG:Fit.File:Parsed record RecordHeader: Local data message 4 (Compressed 0)
DEBUG:Fit.File:  Data [4]: DataMessage: <MessageType.monitoring: 55>: timestamp(2018-02-14 23:26:59 (887581620)), intensity(3), activity_type(ActivityType.stop_disable (8)),
DEBUG:Fit.File:Parsed <MessageType.monitoring: 55>
DEBUG:Fit.File:Record 118: consumed 1002 of 1814 True
DEBUG:Fit.File:Parsed record RecordHeader: Local data message 1 (Compressed 0)
DEBUG:Fit.File:  Data [1]: DataMessage: <MessageType.stress_level: 227>: stress_level_time(2018-02-14 22:27:00 (887581620)), unknown_4(1), stress_level_value(15), unknown_2(38), unknown_3(34),
DEBUG:Fit.File:Parsed <MessageType.stress_level: 227>
DEBUG:Fit.File:Record 119: consumed 1012 of 1814 True
DEBUG:Fit.File:Parsed record RecordHeader: Local data message 2 (Compressed 0)
DEBUG:Fit.File:  Data [2]: DataMessage: <MessageType.monitoring: 55>: heart_rate(55 bpm), timestamp_16(27632 s),
DEBUG:Fit.File:Parsed <MessageType.monitoring: 55>
DEBUG:Fit.File:Record 120: consumed 1016 of 1814 True
DEBUG:Fit.File:Parsed record RecordHeader: Local data message 0 (Compressed 0)
DEBUG:Fit.File:  Data [0]: DataMessage: <MessageType.unknown_233: 233>: unknown_2( ([7, 214, 7, 0])),
DEBUG:Fit.File:Parsed <MessageType.unknown_233: 233>
DEBUG:Fit.File:Record 121: consumed 1021 of 1814 True
DEBUG:Fit.File:Parsed record RecordHeader: Local definition message 5 (Compressed 0)
DEBUG:Fit.File:  Definition [5]: DefinitionMessage: <MessageType.monitoring: 55> 5 Little_Endian fields
DEBUG:Fit.File:Record 122: consumed 1042 of 1814 True
DEBUG:Fit.File:Parsed record RecordHeader: Local data message 5 (Compressed 0)
DEBUG:Fit.File:  Data [5]: DataMessage: <MessageType.monitoring: 55>: active_calories(188 kcal), cum_active_time(01:44:21 (6261000)), intensity(1), steps(5889.0 steps), timestamp_16(27632 s), activity_type(ActivityType.walking (6)),
DEBUG:Fit.File:Parsed <MessageType.monitoring: 55>
DEBUG:Fit.File:Record 123: consumed 1056 of 1814 True
DEBUG:Fit.File:Parsed record RecordHeader: Local data message 1 (Compressed 0)
DEBUG:Fit.File:  Data [1]: DataMessage: <MessageType.stress_level: 227>: stress_level_time(2018-02-14 22:28:00 (887581680)), unknown_4(1), stress_level_value(-2), unknown_2(102), unknown_3(34),
DEBUG:Fit.File:Parsed <MessageType.stress_level: 227>
DEBUG:Fit.File:Record 124: consumed 1066 of 1814 True
DEBUG:Fit.File:Parsed record RecordHeader: Local data message 2 (Compressed 0)
DEBUG:Fit.File:  Data [2]: DataMessage: <MessageType.monitoring: 55>: heart_rate(77 bpm), timestamp_16(27692 s),
DEBUG:Fit.File:Parsed <MessageType.monitoring: 55>
DEBUG:Fit.File:Record 125: consumed 1070 of 1814 True
DEBUG:Fit.File:Parsed record RecordHeader: Local data message 0 (Compressed 0)
DEBUG:Fit.File:  Data [0]: DataMessage: <MessageType.unknown_233: 233>: unknown_2( ([2, 192, 0, 8])),
DEBUG:Fit.File:Parsed <MessageType.unknown_233: 233>
DEBUG:Fit.File:Record 126: consumed 1075 of 1814 True
DEBUG:Fit.File:Parsed record RecordHeader: Local data message 1 (Compressed 0)
DEBUG:Fit.File:  Data [1]: DataMessage: <MessageType.stress_level: 227>: stress_level_time(2018-02-14 22:29:00 (887581740)), unknown_4(1), stress_level_value(28), unknown_2(-4), unknown_3(34),
DEBUG:Fit.File:Parsed <MessageType.stress_level: 227>
DEBUG:Fit.File:Record 127: consumed 1085 of 1814 True
DEBUG:Fit.File:Parsed record RecordHeader: Local data message 2 (Compressed 0)
DEBUG:Fit.File:  Data [2]: DataMessage: <MessageType.monitoring: 55>: heart_rate(62 bpm), timestamp_16(27752 s),
DEBUG:Fit.File:Parsed <MessageType.monitoring: 55>
DEBUG:Fit.File:Record 128: consumed 1089 of 1814 True
DEBUG:Fit.File:Parsed record RecordHeader: Local data message 0 (Compressed 0)
DEBUG:Fit.File:  Data [0]: DataMessage: <MessageType.unknown_233: 233>: unknown_2(6. ([54, 46, 0, 16])),
DEBUG:Fit.File:Parsed <MessageType.unknown_233: 233>
DEBUG:Fit.File:Record 129: consumed 1094 of 1814 True
DEBUG:Fit.File:Parsed record RecordHeader: Local data message 1 (Compressed 0)
DEBUG:Fit.File:  Data [1]: DataMessage: <MessageType.stress_level: 227>: stress_level_time(2018-02-14 22:30:00 (887581800)), unknown_4(1), stress_level_value(-1), unknown_2(101), unknown_3(34),
DEBUG:Fit.File:Parsed <MessageType.stress_level: 227>
DEBUG:Fit.File:Record 130: consumed 1104 of 1814 True
DEBUG:Fit.File:Parsed record RecordHeader: Local data message 2 (Compressed 0)
DEBUG:Fit.File:  Data [2]: DataMessage: <MessageType.monitoring: 55>: heart_rate(57 bpm), timestamp_16(27812 s),
DEBUG:Fit.File:Parsed <MessageType.monitoring: 55>
DEBUG:Fit.File:Record 131: consumed 1108 of 1814 True
DEBUG:Fit.File:Parsed record RecordHeader: Local data message 0 (Compressed 0)
DEBUG:Fit.File:  Data [0]: DataMessage: <MessageType.unknown_233: 233>: unknown_2(|t ([0, 124, 116, 240])),
DEBUG:Fit.File:Parsed <MessageType.unknown_233: 233>
DEBUG:Fit.File:Record 132: consumed 1113 of 1814 True
DEBUG:Fit.File:Parsed record RecordHeader: Local data message 1 (Compressed 0)
DEBUG:Fit.File:  Data [1]: DataMessage: <MessageType.stress_level: 227>: stress_level_time(2018-02-14 22:31:00 (887581860)), unknown_4(1), stress_level_value(20), unknown_2(20), unknown_3(34),
DEBUG:Fit.File:Parsed <MessageType.stress_level: 227>
DEBUG:Fit.File:Record 133: consumed 1123 of 1814 True
DEBUG:Fit.File:Parsed record RecordHeader: Local data message 2 (Compressed 0)
DEBUG:Fit.File:  Data [2]: DataMessage: <MessageType.monitoring: 55>: heart_rate(56 bpm), timestamp_16(27872 s),
DEBUG:Fit.File:Parsed <MessageType.monitoring: 55>
DEBUG:Fit.File:Record 134: consumed 1127 of 1814 True
DEBUG:Fit.File:Parsed record RecordHeader: Local data message 0 (Compressed 0)
DEBUG:Fit.File:  Data [0]: DataMessage: <MessageType.unknown_233: 233>: unknown_2( ([0, 0, 0, 24])),
DEBUG:Fit.File:Parsed <MessageType.unknown_233: 233>
DEBUG:Fit.File:Record 135: consumed 1132 of 1814 True
DEBUG:Fit.File:Parsed record RecordHeader: Local data message 1 (Compressed 0)
DEBUG:Fit.File:  Data [1]: DataMessage: <MessageType.stress_level: 227>: stress_level_time(2018-02-14 22:32:00 (887581920)), unknown_4(1), stress_level_value(15), unknown_2(41), unknown_3(34),
DEBUG:Fit.File:Parsed <MessageType.stress_level: 227>
DEBUG:Fit.File:Record 136: consumed 1142 of 1814 True
DEBUG:Fit.File:Parsed record RecordHeader: Local data message 0 (Compressed 0)
DEBUG:Fit.File:  Data [0]: DataMessage: <MessageType.unknown_233: 233>: unknown_2(R
 ([82, 10, 232, 224])),
DEBUG:Fit.File:Parsed <MessageType.unknown_233: 233>
DEBUG:Fit.File:Record 137: consumed 1147 of 1814 True
DEBUG:Fit.File:Parsed record RecordHeader: Local data message 1 (Compressed 0)
DEBUG:Fit.File:  Data [1]: DataMessage: <MessageType.stress_level: 227>: stress_level_time(2018-02-14 22:33:00 (887581980)), unknown_4(1), stress_level_value(17), unknown_2(31), unknown_3(34),
DEBUG:Fit.File:Parsed <MessageType.stress_level: 227>
DEBUG:Fit.File:Record 138: consumed 1157 of 1814 True
DEBUG:Fit.File:Parsed record RecordHeader: Local data message 2 (Compressed 0)
DEBUG:Fit.File:  Data [2]: DataMessage: <MessageType.monitoring: 55>: heart_rate(59 bpm), timestamp_16(27992 s),
DEBUG:Fit.File:Parsed <MessageType.monitoring: 55>
DEBUG:Fit.File:Record 139: consumed 1161 of 1814 True
DEBUG:Fit.File:Parsed record RecordHeader: Local data message 0 (Compressed 0)
DEBUG:Fit.File:  Data [0]: DataMessage: <MessageType.unknown_233: 233>: unknown_2( ([7, 254, 7, 0])),
DEBUG:Fit.File:Parsed <MessageType.unknown_233: 233>
DEBUG:Fit.File:Record 140: consumed 1166 of 1814 True
DEBUG:Fit.File:Parsed record RecordHeader: Local data message 1 (Compressed 0)
DEBUG:Fit.File:  Data [1]: DataMessage: <MessageType.stress_level: 227>: stress_level_time(2018-02-14 22:34:00 (887582040)), unknown_4(1), stress_level_value(18), unknown_2(28), unknown_3(34),
DEBUG:Fit.File:Parsed <MessageType.stress_level: 227>
DEBUG:Fit.File:Record 141: consumed 1176 of 1814 True
DEBUG:Fit.File:Parsed record RecordHeader: Local data message 0 (Compressed 0)
DEBUG:Fit.File:  Data [0]: DataMessage: <MessageType.unknown_233: 233>: unknown_2( ([2, 192, 0, 8])),
DEBUG:Fit.File:Parsed <MessageType.unknown_233: 233>
DEBUG:Fit.File:Record 142: consumed 1181 of 1814 True
DEBUG:Fit.File:Parsed record RecordHeader: Local data message 1 (Compressed 0)
DEBUG:Fit.File:  Data [1]: DataMessage: <MessageType.stress_level: 227>: stress_level_time(2018-02-14 22:35:00 (887582100)), unknown_4(1), stress_level_value(20), unknown_2(21), unknown_3(34),
DEBUG:Fit.File:Parsed <MessageType.stress_level: 227>
DEBUG:Fit.File:Record 143: consumed 1191 of 1814 True
DEBUG:Fit.File:Parsed record RecordHeader: Local data message 2 (Compressed 0)
DEBUG:Fit.File:  Data [2]: DataMessage: <MessageType.monitoring: 55>: heart_rate(57 bpm), timestamp_16(28112 s),
DEBUG:Fit.File:Parsed <MessageType.monitoring: 55>
DEBUG:Fit.File:Record 144: consumed 1195 of 1814 True
DEBUG:Fit.File:Parsed record RecordHeader: Local data message 0 (Compressed 0)
DEBUG:Fit.File:  Data [0]: DataMessage: <MessageType.unknown_233: 233>: unknown_2(6. ([54, 46, 0, 16])),
DEBUG:Fit.File:Parsed <MessageType.unknown_233: 233>
DEBUG:Fit.File:Record 145: consumed 1200 of 1814 True
DEBUG:Fit.File:Parsed record RecordHeader: Local data message 1 (Compressed 0)
DEBUG:Fit.File:  Data [1]: DataMessage: <MessageType.stress_level: 227>: stress_level_time(2018-02-14 22:36:00 (887582160)), unknown_4(1), stress_level_value(20), unknown_2(20), unknown_3(34),
DEBUG:Fit.File:Parsed <MessageType.stress_level: 227>
DEBUG:Fit.File:Record 146: consumed 1210 of 1814 True
DEBUG:Fit.File:Parsed record RecordHeader: Local data message 2 (Compressed 0)
DEBUG:Fit.File:  Data [2]: DataMessage: <MessageType.monitoring: 55>: heart_rate(60 bpm), timestamp_16(28172 s),
DEBUG:Fit.File:Parsed <MessageType.monitoring: 55>
DEBUG:Fit.File:Record 147: consumed 1214 of 1814 True
DEBUG:Fit.File:Parsed record RecordHeader: Local data message 0 (Compressed 0)
DEBUG:Fit.File:  Data [0]: DataMessage: <MessageType.unknown_233: 233>: unknown_2( ([0, 0, 0, 24])),
DEBUG:Fit.File:Parsed <MessageType.unknown_233: 233>
DEBUG:Fit.File:Record 148: consumed 1219 of 1814 True
DEBUG:Fit.File:Parsed record RecordHeader: Local data message 1 (Compressed 0)
DEBUG:Fit.File:  Data [1]: DataMessage: <MessageType.stress_level: 227>: stress_level_time(2018-02-14 22:37:00 (887582220)), unknown_4(1), stress_level_value(-1), unknown_2(101), unknown_3(34),
DEBUG:Fit.File:Parsed <MessageType.stress_level: 227>
DEBUG:Fit.File:Record 149: consumed 1229 of 1814 True
DEBUG:Fit.File:Parsed record RecordHeader: Local data message 2 (Compressed 0)
DEBUG:Fit.File:  Data [2]: DataMessage: <MessageType.monitoring: 55>: heart_rate(59 bpm), timestamp_16(28232 s),
DEBUG:Fit.File:Parsed <MessageType.monitoring: 55>
DEBUG:Fit.File:Record 150: consumed 1233 of 1814 True
DEBUG:Fit.File:Parsed record RecordHeader: Local data message 0 (Compressed 0)
DEBUG:Fit.File:  Data [0]: DataMessage: <MessageType.unknown_233: 233>: unknown_2( ([7, 254, 7, 0])),
DEBUG:Fit.File:Parsed <MessageType.unknown_233: 233>
DEBUG:Fit.File:Record 151: consumed 1238 of 1814 True
DEBUG:Fit.File:Parsed record RecordHeader: Local data message 1 (Compressed 0)
DEBUG:Fit.File:  Data [1]: DataMessage: <MessageType.stress_level: 227>: stress_level_time(2018-02-14 22:38:00 (887582280)), unknown_4(1), stress_level_value(20), unknown_2(21), unknown_3(34),
DEBUG:Fit.File:Parsed <MessageType.stress_level: 227>
DEBUG:Fit.File:Record 152: consumed 1248 of 1814 True
DEBUG:Fit.File:Parsed record RecordHeader: Local data message 2 (Compressed 0)
DEBUG:Fit.File:  Data [2]: DataMessage: <MessageType.monitoring: 55>: heart_rate(72 bpm), timestamp_16(28292 s),
DEBUG:Fit.File:Parsed <MessageType.monitoring: 55>
DEBUG:Fit.File:Record 153: consumed 1252 of 1814 True
DEBUG:Fit.File:Parsed record RecordHeader: Local data message 0 (Compressed 0)
DEBUG:Fit.File:  Data [0]: DataMessage: <MessageType.unknown_233: 233>: unknown_2( ([2, 192, 0, 8])),
DEBUG:Fit.File:Parsed <MessageType.unknown_233: 233>
DEBUG:Fit.File:Record 154: consumed 1257 of 1814 True
DEBUG:Fit.File:Parsed record RecordHeader: Local data message 1 (Compressed 0)
DEBUG:Fit.File:  Data [1]: DataMessage: <MessageType.stress_level: 227>: stress_level_time(2018-02-14 22:39:00 (887582340)), unknown_4(1), stress_level_value(-1), unknown_2(101), unknown_3(34),
DEBUG:Fit.File:Parsed <MessageType.stress_level: 227>
DEBUG:Fit.File:Record 155: consumed 1267 of 1814 True
DEBUG:Fit.File:Parsed record RecordHeader: Local data message 2 (Compressed 0)
DEBUG:Fit.File:  Data [2]: DataMessage: <MessageType.monitoring: 55>: heart_rate(57 bpm), timestamp_16(28352 s),
DEBUG:Fit.File:Parsed <MessageType.monitoring: 55>
DEBUG:Fit.File:Record 156: consumed 1271 of 1814 True
DEBUG:Fit.File:Parsed record RecordHeader: Local data message 0 (Compressed 0)
DEBUG:Fit.File:  Data [0]: DataMessage: <MessageType.unknown_233: 233>: unknown_2(p ([0, 0, 112, 240])),
DEBUG:Fit.File:Parsed <MessageType.unknown_233: 233>
DEBUG:Fit.File:Record 157: consumed 1276 of 1814 True
DEBUG:Fit.File:Parsed record RecordHeader: Local data message 1 (Compressed 0)
DEBUG:Fit.File:  Data [1]: DataMessage: <MessageType.stress_level: 227>: stress_level_time(2018-02-14 22:40:00 (887582400)), unknown_4(1), stress_level_value(24), unknown_2(5), unknown_3(34),
DEBUG:Fit.File:Parsed <MessageType.stress_level: 227>
DEBUG:Fit.File:Record 158: consumed 1286 of 1814 True
DEBUG:Fit.File:Parsed record RecordHeader: Local data message 0 (Compressed 0)
DEBUG:Fit.File:  Data [0]: DataMessage: <MessageType.unknown_233: 233>: unknown_2(6. ([54, 46, 0, 16])),
DEBUG:Fit.File:Parsed <MessageType.unknown_233: 233>
DEBUG:Fit.File:Record 159: consumed 1291 of 1814 True
DEBUG:Fit.File:Parsed record RecordHeader: Local data message 1 (Compressed 0)
DEBUG:Fit.File:  Data [1]: DataMessage: <MessageType.stress_level: 227>: stress_level_time(2018-02-14 22:41:00 (887582460)), unknown_4(1), stress_level_value(19), unknown_2(23), unknown_3(34),
DEBUG:Fit.File:Parsed <MessageType.stress_level: 227>
DEBUG:Fit.File:Record 160: consumed 1301 of 1814 True
DEBUG:Fit.File:Parsed record RecordHeader: Local data message 2 (Compressed 0)
DEBUG:Fit.File:  Data [2]: DataMessage: <MessageType.monitoring: 55>: heart_rate(55 bpm), timestamp_16(28472 s),
DEBUG:Fit.File:Parsed <MessageType.monitoring: 55>
DEBUG:Fit.File:Record 161: consumed 1305 of 1814 True
DEBUG:Fit.File:Parsed record RecordHeader: Local data message 0 (Compressed 0)
DEBUG:Fit.File:  Data [0]: DataMessage: <MessageType.unknown_233: 233>: unknown_2( ([0, 0, 0, 24])),
DEBUG:Fit.File:Parsed <MessageType.unknown_233: 233>
DEBUG:Fit.File:Record 162: consumed 1310 of 1814 True
DEBUG:Fit.File:Parsed record RecordHeader: Local data message 1 (Compressed 0)
DEBUG:Fit.File:  Data [1]: DataMessage: <MessageType.stress_level: 227>: stress_level_time(2018-02-14 22:42:00 (887582520)), unknown_4(1), stress_level_value(13), unknown_2(47), unknown_3(34),
DEBUG:Fit.File:Parsed <MessageType.stress_level: 227>
DEBUG:Fit.File:Record 163: consumed 1320 of 1814 True
DEBUG:Fit.File:Parsed record RecordHeader: Local data message 2 (Compressed 0)
DEBUG:Fit.File:  Data [2]: DataMessage: <MessageType.monitoring: 55>: heart_rate(56 bpm), timestamp_16(28532 s),
DEBUG:Fit.File:Parsed <MessageType.monitoring: 55>
DEBUG:Fit.File:Record 164: consumed 1324 of 1814 True
DEBUG:Fit.File:Parsed record RecordHeader: Local data message 0 (Compressed 0)
DEBUG:Fit.File:  Data [0]: DataMessage: <MessageType.unknown_233: 233>: unknown_2(R
 ([82, 10, 232, 224])),
DEBUG:Fit.File:Parsed <MessageType.unknown_233: 233>
DEBUG:Fit.File:Record 165: consumed 1329 of 1814 True
DEBUG:Fit.File:Parsed record RecordHeader: Local data message 1 (Compressed 0)
DEBUG:Fit.File:  Data [1]: DataMessage: <MessageType.stress_level: 227>: stress_level_time(2018-02-14 22:43:00 (887582580)), unknown_4(1), stress_level_value(14), unknown_2(45), unknown_3(35),
DEBUG:Fit.File:Parsed <MessageType.stress_level: 227>
DEBUG:Fit.File:Record 166: consumed 1339 of 1814 True
DEBUG:Fit.File:Parsed record RecordHeader: Local data message 2 (Compressed 0)
DEBUG:Fit.File:  Data [2]: DataMessage: <MessageType.monitoring: 55>: heart_rate(55 bpm), timestamp_16(28592 s),
DEBUG:Fit.File:Parsed <MessageType.monitoring: 55>
DEBUG:Fit.File:Record 167: consumed 1343 of 1814 True
DEBUG:Fit.File:Parsed record RecordHeader: Local data message 0 (Compressed 0)
DEBUG:Fit.File:  Data [0]: DataMessage: <MessageType.unknown_233: 233>: unknown_2( ([7, 254, 7, 0])),
DEBUG:Fit.File:Parsed <MessageType.unknown_233: 233>
DEBUG:Fit.File:Record 168: consumed 1348 of 1814 True
DEBUG:Fit.File:Parsed record RecordHeader: Local data message 1 (Compressed 0)
DEBUG:Fit.File:  Data [1]: DataMessage: <MessageType.stress_level: 227>: stress_level_time(2018-02-14 22:44:00 (887582640)), unknown_4(1), stress_level_value(20), unknown_2(19), unknown_3(35),
DEBUG:Fit.File:Parsed <MessageType.stress_level: 227>
DEBUG:Fit.File:Record 169: consumed 1358 of 1814 True
DEBUG:Fit.File:Parsed record RecordHeader: Local data message 2 (Compressed 0)
DEBUG:Fit.File:  Data [2]: DataMessage: <MessageType.monitoring: 55>: heart_rate(62 bpm), timestamp_16(28652 s),
DEBUG:Fit.File:Parsed <MessageType.monitoring: 55>
DEBUG:Fit.File:Record 170: consumed 1362 of 1814 True
DEBUG:Fit.File:Parsed record RecordHeader: Local data message 0 (Compressed 0)
DEBUG:Fit.File:  Data [0]: DataMessage: <MessageType.unknown_233: 233>: unknown_2( ([2, 192, 0, 8])),
DEBUG:Fit.File:Parsed <MessageType.unknown_233: 233>
DEBUG:Fit.File:Record 171: consumed 1367 of 1814 True
DEBUG:Fit.File:Parsed record RecordHeader: Local data message 4 (Compressed 0)
DEBUG:Fit.File:  Data [4]: DataMessage: <MessageType.monitoring: 55>: timestamp(2018-02-14 23:44:59 (887582700)), intensity(3), activity_type(ActivityType.stop_disable (8)),
DEBUG:Fit.File:Parsed <MessageType.monitoring: 55>
DEBUG:Fit.File:Record 172: consumed 1373 of 1814 True
DEBUG:Fit.File:Parsed record RecordHeader: Local data message 1 (Compressed 0)
DEBUG:Fit.File:  Data [1]: DataMessage: <MessageType.stress_level: 227>: stress_level_time(2018-02-14 22:45:00 (887582700)), unknown_4(1), stress_level_value(11), unknown_2(57), unknown_3(35),
DEBUG:Fit.File:Parsed <MessageType.stress_level: 227>
DEBUG:Fit.File:Record 173: consumed 1383 of 1814 True
DEBUG:Fit.File:Parsed record RecordHeader: Local data message 2 (Compressed 0)
DEBUG:Fit.File:  Data [2]: DataMessage: <MessageType.monitoring: 55>: heart_rate(53 bpm), timestamp_16(28712 s),
DEBUG:Fit.File:Parsed <MessageType.monitoring: 55>
DEBUG:Fit.File:Record 174: consumed 1387 of 1814 True
DEBUG:Fit.File:Parsed record RecordHeader: Local data message 0 (Compressed 0)
DEBUG:Fit.File:  Data [0]: DataMessage: <MessageType.unknown_233: 233>: unknown_2(6. ([54, 46, 0, 16])),
DEBUG:Fit.File:Parsed <MessageType.unknown_233: 233>
DEBUG:Fit.File:Record 175: consumed 1392 of 1814 True
DEBUG:Fit.File:Parsed record RecordHeader: Local data message 5 (Compressed 0)
DEBUG:Fit.File:  Data [5]: DataMessage: <MessageType.monitoring: 55>: active_calories(189 kcal), cum_active_time(01:45:21 (6321000)), intensity(1), steps(5898.0 steps), timestamp_16(28712 s), activity_type(ActivityType.walking (6)),
DEBUG:Fit.File:Parsed <MessageType.monitoring: 55>
DEBUG:Fit.File:Record 176: consumed 1406 of 1814 True
DEBUG:Fit.File:Parsed record RecordHeader: Local data message 1 (Compressed 0)
DEBUG:Fit.File:  Data [1]: DataMessage: <MessageType.stress_level: 227>: stress_level_time(2018-02-14 22:46:00 (887582760)), unknown_4(1), stress_level_value(16), unknown_2(35), unknown_3(35),
DEBUG:Fit.File:Parsed <MessageType.stress_level: 227>
DEBUG:Fit.File:Record 177: consumed 1416 of 1814 True
DEBUG:Fit.File:Parsed record RecordHeader: Local data message 2 (Compressed 0)
DEBUG:Fit.File:  Data [2]: DataMessage: <MessageType.monitoring: 55>: heart_rate(64 bpm), timestamp_16(28772 s),
DEBUG:Fit.File:Parsed <MessageType.monitoring: 55>
DEBUG:Fit.File:Record 178: consumed 1420 of 1814 True
DEBUG:Fit.File:Parsed record RecordHeader: Local data message 0 (Compressed 0)
DEBUG:Fit.File:  Data [0]: DataMessage: <MessageType.unknown_233: 233>: unknown_2( ([0, 0, 0, 24])),
DEBUG:Fit.File:Parsed <MessageType.unknown_233: 233>
DEBUG:Fit.File:Record 179: consumed 1425 of 1814 True
DEBUG:Fit.File:Parsed record RecordHeader: Local data message 1 (Compressed 0)
DEBUG:Fit.File:  Data [1]: DataMessage: <MessageType.stress_level: 227>: stress_level_time(2018-02-14 22:47:00 (887582820)), unknown_4(1), stress_level_value(30), unknown_2(-6), unknown_3(35),
DEBUG:Fit.File:Parsed <MessageType.stress_level: 227>
DEBUG:Fit.File:Record 180: consumed 1435 of 1814 True
DEBUG:Fit.File:Parsed record RecordHeader: Local data message 2 (Compressed 0)
DEBUG:Fit.File:  Data [2]: DataMessage: <MessageType.monitoring: 55>: heart_rate(68 bpm), timestamp_16(28832 s),
DEBUG:Fit.File:Parsed <MessageType.monitoring: 55>
DEBUG:Fit.File:Record 181: consumed 1439 of 1814 True
DEBUG:Fit.File:Parsed record RecordHeader: Local data message 0 (Compressed 0)
DEBUG:Fit.File:  Data [0]: DataMessage: <MessageType.unknown_233: 233>: unknown_2(h~ ([0, 104, 126, 240])),
DEBUG:Fit.File:Parsed <MessageType.unknown_233: 233>
DEBUG:Fit.File:Record 182: consumed 1444 of 1814 True
DEBUG:Fit.File:Parsed record RecordHeader: Local data message 1 (Compressed 0)
DEBUG:Fit.File:  Data [1]: DataMessage: <MessageType.stress_level: 227>: stress_level_time(2018-02-14 22:48:00 (887582880)), unknown_4(1), stress_level_value(21), unknown_2(15), unknown_3(35),
DEBUG:Fit.File:Parsed <MessageType.stress_level: 227>
DEBUG:Fit.File:Record 183: consumed 1454 of 1814 True
DEBUG:Fit.File:Parsed record RecordHeader: Local data message 2 (Compressed 0)
DEBUG:Fit.File:  Data [2]: DataMessage: <MessageType.monitoring: 55>: heart_rate(65 bpm), timestamp_16(28892 s),
DEBUG:Fit.File:Parsed <MessageType.monitoring: 55>
DEBUG:Fit.File:Record 184: consumed 1458 of 1814 True
DEBUG:Fit.File:Parsed record RecordHeader: Local data message 0 (Compressed 0)
DEBUG:Fit.File:  Data [0]: DataMessage: <MessageType.unknown_233: 233>: unknown_2( ([7, 250, 7, 0])),
DEBUG:Fit.File:Parsed <MessageType.unknown_233: 233>
DEBUG:Fit.File:Record 185: consumed 1463 of 1814 True
DEBUG:Fit.File:Parsed record RecordHeader: Local data message 1 (Compressed 0)
DEBUG:Fit.File:  Data [1]: DataMessage: <MessageType.stress_level: 227>: stress_level_time(2018-02-14 22:49:00 (887582940)), unknown_4(1), stress_level_value(13), unknown_2(49), unknown_3(35),
DEBUG:Fit.File:Parsed <MessageType.stress_level: 227>
DEBUG:Fit.File:Record 186: consumed 1473 of 1814 True
DEBUG:Fit.File:Parsed record RecordHeader: Local data message 2 (Compressed 0)
DEBUG:Fit.File:  Data [2]: DataMessage: <MessageType.monitoring: 55>: heart_rate(58 bpm), timestamp_16(28952 s),
DEBUG:Fit.File:Parsed <MessageType.monitoring: 55>
DEBUG:Fit.File:Record 187: consumed 1477 of 1814 True
DEBUG:Fit.File:Parsed record RecordHeader: Local data message 0 (Compressed 0)
DEBUG:Fit.File:  Data [0]: DataMessage: <MessageType.unknown_233: 233>: unknown_2( ([2, 192, 0, 8])),
DEBUG:Fit.File:Parsed <MessageType.unknown_233: 233>
DEBUG:Fit.File:Record 188: consumed 1482 of 1814 True
DEBUG:Fit.File:Parsed record RecordHeader: Local data message 1 (Compressed 0)
DEBUG:Fit.File:  Data [1]: DataMessage: <MessageType.stress_level: 227>: stress_level_time(2018-02-14 22:50:00 (887583000)), unknown_4(1), stress_level_value(-2), unknown_2(102), unknown_3(35),
DEBUG:Fit.File:Parsed <MessageType.stress_level: 227>
DEBUG:Fit.File:Record 189: consumed 1492 of 1814 True
DEBUG:Fit.File:Parsed record RecordHeader: Local data message 2 (Compressed 0)
DEBUG:Fit.File:  Data [2]: DataMessage: <MessageType.monitoring: 55>: heart_rate(68 bpm), timestamp_16(29012 s),
DEBUG:Fit.File:Parsed <MessageType.monitoring: 55>
DEBUG:Fit.File:Record 190: consumed 1496 of 1814 True
DEBUG:Fit.File:Parsed record RecordHeader: Local data message 0 (Compressed 0)
DEBUG:Fit.File:  Data [0]: DataMessage: <MessageType.unknown_233: 233>: unknown_2(4. ([52, 46, 0, 16])),
DEBUG:Fit.File:Parsed <MessageType.unknown_233: 233>
DEBUG:Fit.File:Record 191: consumed 1501 of 1814 True
DEBUG:Fit.File:Parsed record RecordHeader: Local data message 1 (Compressed 0)
DEBUG:Fit.File:  Data [1]: DataMessage: <MessageType.stress_level: 227>: stress_level_time(2018-02-14 22:51:00 (887583060)), unknown_4(1), stress_level_value(16), unknown_2(37), unknown_3(35),
DEBUG:Fit.File:Parsed <MessageType.stress_level: 227>
DEBUG:Fit.File:Record 192: consumed 1511 of 1814 True
DEBUG:Fit.File:Parsed record RecordHeader: Local data message 2 (Compressed 0)
DEBUG:Fit.File:  Data [2]: DataMessage: <MessageType.monitoring: 55>: heart_rate(63 bpm), timestamp_16(29072 s),
DEBUG:Fit.File:Parsed <MessageType.monitoring: 55>
DEBUG:Fit.File:Record 193: consumed 1515 of 1814 True
DEBUG:Fit.File:Parsed record RecordHeader: Local data message 0 (Compressed 0)
DEBUG:Fit.File:  Data [0]: DataMessage: <MessageType.unknown_233: 233>: unknown_2( ([0, 0, 0, 24])),
DEBUG:Fit.File:Parsed <MessageType.unknown_233: 233>
DEBUG:Fit.File:Record 194: consumed 1520 of 1814 True
DEBUG:Fit.File:Parsed record RecordHeader: Local data message 1 (Compressed 0)
DEBUG:Fit.File:  Data [1]: DataMessage: <MessageType.stress_level: 227>: stress_level_time(2018-02-14 22:52:00 (887583120)), unknown_4(1), stress_level_value(9), unknown_2(65), unknown_3(35),
DEBUG:Fit.File:Parsed <MessageType.stress_level: 227>
DEBUG:Fit.File:Record 195: consumed 1530 of 1814 True
DEBUG:Fit.File:Parsed record RecordHeader: Local data message 2 (Compressed 0)
DEBUG:Fit.File:  Data [2]: DataMessage: <MessageType.monitoring: 55>: heart_rate(53 bpm), timestamp_16(29132 s),
DEBUG:Fit.File:Parsed <MessageType.monitoring: 55>
DEBUG:Fit.File:Record 196: consumed 1534 of 1814 True
DEBUG:Fit.File:Parsed record RecordHeader: Local data message 0 (Compressed 0)
DEBUG:Fit.File:  Data [0]: DataMessage: <MessageType.unknown_233: 233>: unknown_2(R
 ([82, 10, 232, 224])),
DEBUG:Fit.File:Parsed <MessageType.unknown_233: 233>
DEBUG:Fit.File:Record 197: consumed 1539 of 1814 True
DEBUG:Fit.File:Parsed record RecordHeader: Local data message 1 (Compressed 0)
DEBUG:Fit.File:  Data [1]: DataMessage: <MessageType.stress_level: 227>: stress_level_time(2018-02-14 22:53:00 (887583180)), unknown_4(1), stress_level_value(9), unknown_2(64), unknown_3(35),
DEBUG:Fit.File:Parsed <MessageType.stress_level: 227>
DEBUG:Fit.File:Record 198: consumed 1549 of 1814 True
DEBUG:Fit.File:Parsed record RecordHeader: Local data message 2 (Compressed 0)
DEBUG:Fit.File:  Data [2]: DataMessage: <MessageType.monitoring: 55>: heart_rate(56 bpm), timestamp_16(29192 s),
DEBUG:Fit.File:Parsed <MessageType.monitoring: 55>
DEBUG:Fit.File:Record 199: consumed 1553 of 1814 True
DEBUG:Fit.File:Parsed record RecordHeader: Local data message 0 (Compressed 0)
DEBUG:Fit.File:  Data [0]: DataMessage: <MessageType.unknown_233: 233>: unknown_2( ([7, 254, 7, 0])),
DEBUG:Fit.File:Parsed <MessageType.unknown_233: 233>
DEBUG:Fit.File:Record 200: consumed 1558 of 1814 True
DEBUG:Fit.File:Parsed record RecordHeader: Local data message 1 (Compressed 0)
DEBUG:Fit.File:  Data [1]: DataMessage: <MessageType.stress_level: 227>: stress_level_time(2018-02-14 22:54:00 (887583240)), unknown_4(1), stress_level_value(15), unknown_2(40), unknown_3(36),
DEBUG:Fit.File:Parsed <MessageType.stress_level: 227>
DEBUG:Fit.File:Record 201: consumed 1568 of 1814 True
DEBUG:Fit.File:Parsed record RecordHeader: Local data message 2 (Compressed 0)
DEBUG:Fit.File:  Data [2]: DataMessage: <MessageType.monitoring: 55>: heart_rate(55 bpm), timestamp_16(29252 s),
DEBUG:Fit.File:Parsed <MessageType.monitoring: 55>
DEBUG:Fit.File:Record 202: consumed 1572 of 1814 True
DEBUG:Fit.File:Parsed record RecordHeader: Local data message 0 (Compressed 0)
DEBUG:Fit.File:  Data [0]: DataMessage: <MessageType.unknown_233: 233>: unknown_2( ([2, 192, 0, 8])),
DEBUG:Fit.File:Parsed <MessageType.unknown_233: 233>
DEBUG:Fit.File:Record 203: consumed 1577 of 1814 True
DEBUG:Fit.File:Parsed record RecordHeader: Local data message 1 (Compressed 0)
DEBUG:Fit.File:  Data [1]: DataMessage: <MessageType.stress_level: 227>: stress_level_time(2018-02-14 22:55:00 (887583300)), unknown_4(1), stress_level_value(18), unknown_2(28), unknown_3(36),
DEBUG:Fit.File:Parsed <MessageType.stress_level: 227>
DEBUG:Fit.File:Record 204: consumed 1587 of 1814 True
DEBUG:Fit.File:Parsed record RecordHeader: Local data message 2 (Compressed 0)
DEBUG:Fit.File:  Data [2]: DataMessage: <MessageType.monitoring: 55>: heart_rate(58 bpm), timestamp_16(29312 s),
DEBUG:Fit.File:Parsed <MessageType.monitoring: 55>
DEBUG:Fit.File:Record 205: consumed 1591 of 1814 True
DEBUG:Fit.File:Parsed record RecordHeader: Local data message 0 (Compressed 0)
DEBUG:Fit.File:  Data [0]: DataMessage: <MessageType.unknown_233: 233>: unknown_2(4, ([52, 44, 0, 16])),
DEBUG:Fit.File:Parsed <MessageType.unknown_233: 233>
DEBUG:Fit.File:Record 206: consumed 1596 of 1814 True
DEBUG:Fit.File:Parsed record RecordHeader: Local data message 1 (Compressed 0)
DEBUG:Fit.File:  Data [1]: DataMessage: <MessageType.stress_level: 227>: stress_level_time(2018-02-14 22:56:00 (887583360)), unknown_4(1), stress_level_value(16), unknown_2(35), unknown_3(36),
DEBUG:Fit.File:Parsed <MessageType.stress_level: 227>
DEBUG:Fit.File:Record 207: consumed 1606 of 1814 True
DEBUG:Fit.File:Parsed record RecordHeader: Local data message 2 (Compressed 0)
DEBUG:Fit.File:  Data [2]: DataMessage: <MessageType.monitoring: 55>: heart_rate(53 bpm), timestamp_16(29372 s),
DEBUG:Fit.File:Parsed <MessageType.monitoring: 55>
DEBUG:Fit.File:Record 208: consumed 1610 of 1814 True
DEBUG:Fit.File:Parsed record RecordHeader: Local data message 0 (Compressed 0)
DEBUG:Fit.File:  Data [0]: DataMessage: <MessageType.unknown_233: 233>: unknown_2(r ([0, 138, 114, 240])),
DEBUG:Fit.File:Parsed <MessageType.unknown_233: 233>
DEBUG:Fit.File:Record 209: consumed 1615 of 1814 True
DEBUG:Fit.File:Parsed record RecordHeader: Local data message 1 (Compressed 0)
DEBUG:Fit.File:  Data [1]: DataMessage: <MessageType.stress_level: 227>: stress_level_time(2018-02-14 22:57:00 (887583420)), unknown_4(1), stress_level_value(13), unknown_2(47), unknown_3(36),
DEBUG:Fit.File:Parsed <MessageType.stress_level: 227>
DEBUG:Fit.File:Record 210: consumed 1625 of 1814 True
DEBUG:Fit.File:Parsed record RecordHeader: Local data message 2 (Compressed 0)
DEBUG:Fit.File:  Data [2]: DataMessage: <MessageType.monitoring: 55>: heart_rate(56 bpm), timestamp_16(29432 s),
DEBUG:Fit.File:Parsed <MessageType.monitoring: 55>
DEBUG:Fit.File:Record 211: consumed 1629 of 1814 True
DEBUG:Fit.File:Parsed record RecordHeader: Local data message 0 (Compressed 0)
DEBUG:Fit.File:  Data [0]: DataMessage: <MessageType.unknown_233: 233>: unknown_2( ([0, 0, 0, 24])),
DEBUG:Fit.File:Parsed <MessageType.unknown_233: 233>
DEBUG:Fit.File:Record 212: consumed 1634 of 1814 True
DEBUG:Fit.File:Parsed record RecordHeader: Local data message 1 (Compressed 0)
DEBUG:Fit.File:  Data [1]: DataMessage: <MessageType.stress_level: 227>: stress_level_time(2018-02-14 22:58:00 (887583480)), unknown_4(1), stress_level_value(15), unknown_2(38), unknown_3(36),
DEBUG:Fit.File:Parsed <MessageType.stress_level: 227>
DEBUG:Fit.File:Record 213: consumed 1644 of 1814 True
DEBUG:Fit.File:Parsed record RecordHeader: Local data message 0 (Compressed 0)
DEBUG:Fit.File:  Data [0]: DataMessage: <MessageType.unknown_233: 233>: unknown_2( ([7, 254, 7, 0])),
DEBUG:Fit.File:Parsed <MessageType.unknown_233: 233>
DEBUG:Fit.File:Record 214: consumed 1649 of 1814 True
DEBUG:Fit.File:Parsed record RecordHeader: Local data message 1 (Compressed 0)
DEBUG:Fit.File:  Data [1]: DataMessage: <MessageType.stress_level: 227>: stress_level_time(2018-02-14 22:59:00 (887583540)), unknown_4(1), stress_level_value(18), unknown_2(29), unknown_3(36),
DEBUG:Fit.File:Parsed <MessageType.stress_level: 227>
DEBUG:Fit.File:Record 215: consumed 1659 of 1814 True
DEBUG:Fit.File:Parsed record RecordHeader: Local data message 2 (Compressed 0)
DEBUG:Fit.File:  Data [2]: DataMessage: <MessageType.monitoring: 55>: heart_rate(55 bpm), timestamp_16(29552 s),
DEBUG:Fit.File:Parsed <MessageType.monitoring: 55>
DEBUG:Fit.File:Record 216: consumed 1663 of 1814 True
DEBUG:Fit.File:Parsed record RecordHeader: Local data message 4 (Compressed 0)
DEBUG:Fit.File:  Data [4]: DataMessage: <MessageType.monitoring: 55>: timestamp(2018-02-14 23:59:59 (887583600)), intensity(4), activity_type(ActivityType.stop_disable (8)),
DEBUG:Fit.File:Parsed <MessageType.monitoring: 55>
DEBUG:Fit.File:Record 217: consumed 1669 of 1814 True
DEBUG:Fit.File:Parsed record RecordHeader: Local definition message 6 (Compressed 0)
DEBUG:Fit.File:  Definition [6]: DefinitionMessage: <MessageType.monitoring: 55> 7 Little_Endian fields
DEBUG:Fit.File:Record 218: consumed 1696 of 1814 True
DEBUG:Fit.File:Parsed record RecordHeader: Local data message 6 (Compressed 0)
DEBUG:Fit.File:  Data [6]: DataMessage: <MessageType.monitoring: 55>: distance(0.0 ft), active_calories(22 kcal), timestamp(2018-02-14 23:59:59 (887583600)), cum_active_time(00:06:38 (398000)), duration(00:00:00 (1440)), cycles(0.0 cycles), activity_type(ActivityType.generic (0)),
DEBUG:Fit.File:Parsed <MessageType.monitoring: 55>
DEBUG:Fit.File:Record 219: consumed 1718 of 1814 True
DEBUG:Fit.File:Parsed record RecordHeader: Local data message 6 (Compressed 0)
DEBUG:Fit.File:  Data [6]: DataMessage: <MessageType.monitoring: 55>: distance(1446627.29659 ft (440932)), active_calories(189 kcal), timestamp(2018-02-14 23:59:59 (887583600)), cum_active_time(01:45:21 (6321000)), steps(5898.0 steps), duration(00:00:00 (1440)), activity_type(ActivityType.walking (6)),
DEBUG:Fit.File:Parsed <MessageType.monitoring: 55>
DEBUG:Fit.File:Record 220: consumed 1740 of 1814 True
DEBUG:Fit.File:Parsed record RecordHeader: Local definition message 7 (Compressed 0)
DEBUG:Fit.File:  Definition [7]: DefinitionMessage: <MessageType.monitoring: 55> 3 Little_Endian fields
DEBUG:Fit.File:Record 221: consumed 1755 of 1814 True
DEBUG:Fit.File:Parsed record RecordHeader: Local data message 7 (Compressed 0)
DEBUG:Fit.File:  Data [7]: DataMessage: <MessageType.monitoring: 55>: timestamp(2018-02-14 23:59:59 (887583600)), cum_ascent(27.4573490814 ft (8369)), cum_descent(44.9770341207 ft (13709)),
DEBUG:Fit.File:Parsed <MessageType.monitoring: 55>
DEBUG:Fit.File:Record 222: consumed 1768 of 1814 True
DEBUG:Fit.File:Parsed record RecordHeader: Local definition message 0 (Compressed 0)
DEBUG:Fit.File:  Definition [0]: DefinitionMessage: <MessageType.monitoring: 55> 3 Little_Endian fields
DEBUG:Fit.File:Record 223: consumed 1783 of 1814 True
DEBUG:Fit.File:Parsed record RecordHeader: Local data message 0 (Compressed 0)
DEBUG:Fit.File:  Data [0]: DataMessage: <MessageType.monitoring: 55>: timestamp(2018-02-14 23:59:59 (887583600)), unknown_38(0), unknown_37(0),
DEBUG:Fit.File:Parsed <MessageType.monitoring: 55>
DEBUG:Fit.File:Record 224: consumed 1792 of 1814 True
DEBUG:Fit.File:Parsed record RecordHeader: Local definition message 1 (Compressed 0)
DEBUG:Fit.File:  Definition [1]: DefinitionMessage: <UnknownMessageType.unknown_211: 211> 3 Little_Endian fields
DEBUG:Fit.File:Record 225: consumed 1807 of 1814 True
DEBUG:Fit.File:Parsed record RecordHeader: Local data message 1 (Compressed 0)
DEBUG:Fit.File:  Data [1]: DataMessage: <UnknownMessageType.unknown_211: 211>: timestamp(2018-02-14 23:59:59 (887583600)), unknown_0(53), unknown_1(54),
DEBUG:Fit.File:Parsed <UnknownMessageType.unknown_211: 211>
DEBUG:Fit.File:Record 226: consumed 1814 of 1814 True
DEBUG:Fit.File:File /Users/ninjarocketman/HealthData/FitFiles/2018_Monitoring/17917800570.fit: 2018-02-14 22:53:59 -> 2018-02-14 23:59:59
INFO:/Users/ninjarocketman/garminDB/GarminDB/FitFileProcessor.pyc:Importing /Users/ninjarocketman/HealthData/FitFiles/2018_Monitoring/17917800570.fit (2018-02-14 22:53:59) [FileType.monitoring_b] with message types: [<MessageType.file_id: 0>, <MessageType.device_info: 23>, <MessageType.software: 35>, <MessageType.monitoring_info: 103>, <MessageType.monitoring: 55>, <UnknownMessageType.unknown_211: 211>, <MessageType.unknown_233: 233>, <MessageType.stress_level: 227>, <MessageType.event: 21>]
INFO:/Users/ninjarocketman/garminDB/GarminDB/FitFileProcessor.pyc:file_id message: {'unknown_6': None, 'product': <GarminProduct.VivoSport: 2623>, 'number': 199, 'time_created': datetime.datetime(2018, 2, 14, 22, 53, 59), 'serial_number': 3961162276, 'type': <FileType.monitoring_b: 32>, 'manufacturer': <Manufacturer.Garmin: 1>}
DEBUG:/Users/ninjarocketman/garminDB/GarminDB/FitFileProcessor.pyc:Processed 1 <MessageType.file_id: 0> entries for /Users/ninjarocketman/HealthData/FitFiles/2018_Monitoring/17917800570.fit
DEBUG:/Users/ninjarocketman/garminDB/GarminDB/FitFileProcessor.pyc:Processed 1 <MessageType.device_info: 23> entries for /Users/ninjarocketman/HealthData/FitFiles/2018_Monitoring/17917800570.fit
DEBUG:/Users/ninjarocketman/garminDB/GarminDB/FitFileProcessor.pyc:software message: {'version': 3.9}
DEBUG:/Users/ninjarocketman/garminDB/GarminDB/FitFileProcessor.pyc:Processed 1 <MessageType.software: 35> entries for /Users/ninjarocketman/HealthData/FitFiles/2018_Monitoring/17917800570.fit
DEBUG:/Users/ninjarocketman/garminDB/GarminDB/FitFileProcessor.pyc:Processed 1 <MessageType.monitoring_info: 103> entries for /Users/ninjarocketman/HealthData/FitFiles/2018_Monitoring/17917800570.fit
DEBUG:/Users/ninjarocketman/garminDB/GarminDB/FitFileProcessor.pyc:Processed 70 <MessageType.monitoring: 55> entries for /Users/ninjarocketman/HealthData/FitFiles/2018_Monitoring/17917800570.fit
DEBUG:/Users/ninjarocketman/garminDB/GarminDB/FitFileProcessor.pyc:No entry handler write_unknown_211_entry for message type <UnknownMessageType.unknown_211: 211> (2) from /Users/ninjarocketman/HealthData/FitFiles/2018_Monitoring/17917800570.fit: DataMessage: <UnknownMessageType.unknown_211: 211>: timestamp(2018-02-14 22:53:59 (887579640)), unknown_0(53), unknown_1(54),
DEBUG:/Users/ninjarocketman/garminDB/GarminDB/FitFileProcessor.pyc:No entry handler write_unknown_211_entry for message type <UnknownMessageType.unknown_211: 211> (2) from /Users/ninjarocketman/HealthData/FitFiles/2018_Monitoring/17917800570.fit: DataMessage: <UnknownMessageType.unknown_211: 211>: timestamp(2018-02-14 22:53:59 (887579640)), unknown_0(53), unknown_1(54),
DEBUG:/Users/ninjarocketman/garminDB/GarminDB/FitFileProcessor.pyc:Processed 2 <UnknownMessageType.unknown_211: 211> entries for /Users/ninjarocketman/HealthData/FitFiles/2018_Monitoring/17917800570.fit
DEBUG:/Users/ninjarocketman/garminDB/GarminDB/FitFileProcessor.pyc:No entry handler write_unknown_233_entry for message type <MessageType.unknown_233: 233> (66) from /Users/ninjarocketman/HealthData/FitFiles/2018_Monitoring/17917800570.fit: DataMessage: <MessageType.unknown_233: 233>: unknown_2(80 ([56, 48, 0, 16])),
DEBUG:/Users/ninjarocketman/garminDB/GarminDB/FitFileProcessor.pyc:No entry handler write_unknown_233_entry for message type <MessageType.unknown_233: 233> (66) from /Users/ninjarocketman/HealthData/FitFiles/2018_Monitoring/17917800570.fit: DataMessage: <MessageType.unknown_233: 233>: unknown_2(80 ([56, 48, 0, 16])),
DEBUG:/Users/ninjarocketman/garminDB/GarminDB/FitFileProcessor.pyc:No entry handler write_unknown_233_entry for message type <MessageType.unknown_233: 233> (66) from /Users/ninjarocketman/HealthData/FitFiles/2018_Monitoring/17917800570.fit: DataMessage: <MessageType.unknown_233: 233>: unknown_2(80 ([56, 48, 0, 16])),
DEBUG:/Users/ninjarocketman/garminDB/GarminDB/FitFileProcessor.pyc:No entry handler write_unknown_233_entry for message type <MessageType.unknown_233: 233> (66) from /Users/ninjarocketman/HealthData/FitFiles/2018_Monitoring/17917800570.fit: DataMessage: <MessageType.unknown_233: 233>: unknown_2(80 ([56, 48, 0, 16])),
DEBUG:/Users/ninjarocketman/garminDB/GarminDB/FitFileProcessor.pyc:No entry handler write_unknown_233_entry for message type <MessageType.unknown_233: 233> (66) from /Users/ninjarocketman/HealthData/FitFiles/2018_Monitoring/17917800570.fit: DataMessage: <MessageType.unknown_233: 233>: unknown_2(80 ([56, 48, 0, 16])),
DEBUG:/Users/ninjarocketman/garminDB/GarminDB/FitFileProcessor.pyc:No entry handler write_unknown_233_entry for message type <MessageType.unknown_233: 233> (66) from /Users/ninjarocketman/HealthData/FitFiles/2018_Monitoring/17917800570.fit: DataMessage: <MessageType.unknown_233: 233>: unknown_2(80 ([56, 48, 0, 16])),
DEBUG:/Users/ninjarocketman/garminDB/GarminDB/FitFileProcessor.pyc:No entry handler write_unknown_233_entry for message type <MessageType.unknown_233: 233> (66) from /Users/ninjarocketman/HealthData/FitFiles/2018_Monitoring/17917800570.fit: DataMessage: <MessageType.unknown_233: 233>: unknown_2(80 ([56, 48, 0, 16])),
DEBUG:/Users/ninjarocketman/garminDB/GarminDB/FitFileProcessor.pyc:No entry handler write_unknown_233_entry for message type <MessageType.unknown_233: 233> (66) from /Users/ninjarocketman/HealthData/FitFiles/2018_Monitoring/17917800570.fit: DataMessage: <MessageType.unknown_233: 233>: unknown_2(80 ([56, 48, 0, 16])),
DEBUG:/Users/ninjarocketman/garminDB/GarminDB/FitFileProcessor.pyc:No entry handler write_unknown_233_entry for message type <MessageType.unknown_233: 233> (66) from /Users/ninjarocketman/HealthData/FitFiles/2018_Monitoring/17917800570.fit: DataMessage: <MessageType.unknown_233: 233>: unknown_2(80 ([56, 48, 0, 16])),
DEBUG:/Users/ninjarocketman/garminDB/GarminDB/FitFileProcessor.pyc:No entry handler write_unknown_233_entry for message type <MessageType.unknown_233: 233> (66) from /Users/ninjarocketman/HealthData/FitFiles/2018_Monitoring/17917800570.fit: DataMessage: <MessageType.unknown_233: 233>: unknown_2(80 ([56, 48, 0, 16])),
DEBUG:/Users/ninjarocketman/garminDB/GarminDB/FitFileProcessor.pyc:No entry handler write_unknown_233_entry for message type <MessageType.unknown_233: 233> (66) from /Users/ninjarocketman/HealthData/FitFiles/2018_Monitoring/17917800570.fit: DataMessage: <MessageType.unknown_233: 233>: unknown_2(80 ([56, 48, 0, 16])),
DEBUG:/Users/ninjarocketman/garminDB/GarminDB/FitFileProcessor.pyc:No entry handler write_unknown_233_entry for message type <MessageType.unknown_233: 233> (66) from /Users/ninjarocketman/HealthData/FitFiles/2018_Monitoring/17917800570.fit: DataMessage: <MessageType.unknown_233: 233>: unknown_2(80 ([56, 48, 0, 16])),
DEBUG:/Users/ninjarocketman/garminDB/GarminDB/FitFileProcessor.pyc:No entry handler write_unknown_233_entry for message type <MessageType.unknown_233: 233> (66) from /Users/ninjarocketman/HealthData/FitFiles/2018_Monitoring/17917800570.fit: DataMessage: <MessageType.unknown_233: 233>: unknown_2(80 ([56, 48, 0, 16])),
DEBUG:/Users/ninjarocketman/garminDB/GarminDB/FitFileProcessor.pyc:No entry handler write_unknown_233_entry for message type <MessageType.unknown_233: 233> (66) from /Users/ninjarocketman/HealthData/FitFiles/2018_Monitoring/17917800570.fit: DataMessage: <MessageType.unknown_233: 233>: unknown_2(80 ([56, 48, 0, 16])),
DEBUG:/Users/ninjarocketman/garminDB/GarminDB/FitFileProcessor.pyc:No entry handler write_unknown_233_entry for message type <MessageType.unknown_233: 233> (66) from /Users/ninjarocketman/HealthData/FitFiles/2018_Monitoring/17917800570.fit: DataMessage: <MessageType.unknown_233: 233>: unknown_2(80 ([56, 48, 0, 16])),
DEBUG:/Users/ninjarocketman/garminDB/GarminDB/FitFileProcessor.pyc:No entry handler write_unknown_233_entry for message type <MessageType.unknown_233: 233> (66) from /Users/ninjarocketman/HealthData/FitFiles/2018_Monitoring/17917800570.fit: DataMessage: <MessageType.unknown_233: 233>: unknown_2(80 ([56, 48, 0, 16])),
DEBUG:/Users/ninjarocketman/garminDB/GarminDB/FitFileProcessor.pyc:No entry handler write_unknown_233_entry for message type <MessageType.unknown_233: 233> (66) from /Users/ninjarocketman/HealthData/FitFiles/2018_Monitoring/17917800570.fit: DataMessage: <MessageType.unknown_233: 233>: unknown_2(80 ([56, 48, 0, 16])),
DEBUG:/Users/ninjarocketman/garminDB/GarminDB/FitFileProcessor.pyc:No entry handler write_unknown_233_entry for message type <MessageType.unknown_233: 233> (66) from /Users/ninjarocketman/HealthData/FitFiles/2018_Monitoring/17917800570.fit: DataMessage: <MessageType.unknown_233: 233>: unknown_2(80 ([56, 48, 0, 16])),
DEBUG:/Users/ninjarocketman/garminDB/GarminDB/FitFileProcessor.pyc:No entry handler write_unknown_233_entry for message type <MessageType.unknown_233: 233> (66) from /Users/ninjarocketman/HealthData/FitFiles/2018_Monitoring/17917800570.fit: DataMessage: <MessageType.unknown_233: 233>: unknown_2(80 ([56, 48, 0, 16])),
DEBUG:/Users/ninjarocketman/garminDB/GarminDB/FitFileProcessor.pyc:No entry handler write_unknown_233_entry for message type <MessageType.unknown_233: 233> (66) from /Users/ninjarocketman/HealthData/FitFiles/2018_Monitoring/17917800570.fit: DataMessage: <MessageType.unknown_233: 233>: unknown_2(80 ([56, 48, 0, 16])),
DEBUG:/Users/ninjarocketman/garminDB/GarminDB/FitFileProcessor.pyc:No entry handler write_unknown_233_entry for message type <MessageType.unknown_233: 233> (66) from /Users/ninjarocketman/HealthData/FitFiles/2018_Monitoring/17917800570.fit: DataMessage: <MessageType.unknown_233: 233>: unknown_2(80 ([56, 48, 0, 16])),
DEBUG:/Users/ninjarocketman/garminDB/GarminDB/FitFileProcessor.pyc:No entry handler write_unknown_233_entry for message type <MessageType.unknown_233: 233> (66) from /Users/ninjarocketman/HealthData/FitFiles/2018_Monitoring/17917800570.fit: DataMessage: <MessageType.unknown_233: 233>: unknown_2(80 ([56, 48, 0, 16])),
DEBUG:/Users/ninjarocketman/garminDB/GarminDB/FitFileProcessor.pyc:No entry handler write_unknown_233_entry for message type <MessageType.unknown_233: 233> (66) from /Users/ninjarocketman/HealthData/FitFiles/2018_Monitoring/17917800570.fit: DataMessage: <MessageType.unknown_233: 233>: unknown_2(80 ([56, 48, 0, 16])),
DEBUG:/Users/ninjarocketman/garminDB/GarminDB/FitFileProcessor.pyc:No entry handler write_unknown_233_entry for message type <MessageType.unknown_233: 233> (66) from /Users/ninjarocketman/HealthData/FitFiles/2018_Monitoring/17917800570.fit: DataMessage: <MessageType.unknown_233: 233>: unknown_2(80 ([56, 48, 0, 16])),
DEBUG:/Users/ninjarocketman/garminDB/GarminDB/FitFileProcessor.pyc:No entry handler write_unknown_233_entry for message type <MessageType.unknown_233: 233> (66) from /Users/ninjarocketman/HealthData/FitFiles/2018_Monitoring/17917800570.fit: DataMessage: <MessageType.unknown_233: 233>: unknown_2(80 ([56, 48, 0, 16])),
DEBUG:/Users/ninjarocketman/garminDB/GarminDB/FitFileProcessor.pyc:No entry handler write_unknown_233_entry for message type <MessageType.unknown_233: 233> (66) from /Users/ninjarocketman/HealthData/FitFiles/2018_Monitoring/17917800570.fit: DataMessage: <MessageType.unknown_233: 233>: unknown_2(80 ([56, 48, 0, 16])),
DEBUG:/Users/ninjarocketman/garminDB/GarminDB/FitFileProcessor.pyc:No entry handler write_unknown_233_entry for message type <MessageType.unknown_233: 233> (66) from /Users/ninjarocketman/HealthData/FitFiles/2018_Monitoring/17917800570.fit: DataMessage: <MessageType.unknown_233: 233>: unknown_2(80 ([56, 48, 0, 16])),
DEBUG:/Users/ninjarocketman/garminDB/GarminDB/FitFileProcessor.pyc:No entry handler write_unknown_233_entry for message type <MessageType.unknown_233: 233> (66) from /Users/ninjarocketman/HealthData/FitFiles/2018_Monitoring/17917800570.fit: DataMessage: <MessageType.unknown_233: 233>: unknown_2(80 ([56, 48, 0, 16])),
DEBUG:/Users/ninjarocketman/garminDB/GarminDB/FitFileProcessor.pyc:No entry handler write_unknown_233_entry for message type <MessageType.unknown_233: 233> (66) from /Users/ninjarocketman/HealthData/FitFiles/2018_Monitoring/17917800570.fit: DataMessage: <MessageType.unknown_233: 233>: unknown_2(80 ([56, 48, 0, 16])),
DEBUG:/Users/ninjarocketman/garminDB/GarminDB/FitFileProcessor.pyc:No entry handler write_unknown_233_entry for message type <MessageType.unknown_233: 233> (66) from /Users/ninjarocketman/HealthData/FitFiles/2018_Monitoring/17917800570.fit: DataMessage: <MessageType.unknown_233: 233>: unknown_2(80 ([56, 48, 0, 16])),
DEBUG:/Users/ninjarocketman/garminDB/GarminDB/FitFileProcessor.pyc:No entry handler write_unknown_233_entry for message type <MessageType.unknown_233: 233> (66) from /Users/ninjarocketman/HealthData/FitFiles/2018_Monitoring/17917800570.fit: DataMessage: <MessageType.unknown_233: 233>: unknown_2(80 ([56, 48, 0, 16])),
DEBUG:/Users/ninjarocketman/garminDB/GarminDB/FitFileProcessor.pyc:No entry handler write_unknown_233_entry for message type <MessageType.unknown_233: 233> (66) from /Users/ninjarocketman/HealthData/FitFiles/2018_Monitoring/17917800570.fit: DataMessage: <MessageType.unknown_233: 233>: unknown_2(80 ([56, 48, 0, 16])),
DEBUG:/Users/ninjarocketman/garminDB/GarminDB/FitFileProcessor.pyc:No entry handler write_unknown_233_entry for message type <MessageType.unknown_233: 233> (66) from /Users/ninjarocketman/HealthData/FitFiles/2018_Monitoring/17917800570.fit: DataMessage: <MessageType.unknown_233: 233>: unknown_2(80 ([56, 48, 0, 16])),
DEBUG:/Users/ninjarocketman/garminDB/GarminDB/FitFileProcessor.pyc:No entry handler write_unknown_233_entry for message type <MessageType.unknown_233: 233> (66) from /Users/ninjarocketman/HealthData/FitFiles/2018_Monitoring/17917800570.fit: DataMessage: <MessageType.unknown_233: 233>: unknown_2(80 ([56, 48, 0, 16])),
DEBUG:/Users/ninjarocketman/garminDB/GarminDB/FitFileProcessor.pyc:No entry handler write_unknown_233_entry for message type <MessageType.unknown_233: 233> (66) from /Users/ninjarocketman/HealthData/FitFiles/2018_Monitoring/17917800570.fit: DataMessage: <MessageType.unknown_233: 233>: unknown_2(80 ([56, 48, 0, 16])),
DEBUG:/Users/ninjarocketman/garminDB/GarminDB/FitFileProcessor.pyc:No entry handler write_unknown_233_entry for message type <MessageType.unknown_233: 233> (66) from /Users/ninjarocketman/HealthData/FitFiles/2018_Monitoring/17917800570.fit: DataMessage: <MessageType.unknown_233: 233>: unknown_2(80 ([56, 48, 0, 16])),
DEBUG:/Users/ninjarocketman/garminDB/GarminDB/FitFileProcessor.pyc:No entry handler write_unknown_233_entry for message type <MessageType.unknown_233: 233> (66) from /Users/ninjarocketman/HealthData/FitFiles/2018_Monitoring/17917800570.fit: DataMessage: <MessageType.unknown_233: 233>: unknown_2(80 ([56, 48, 0, 16])),
DEBUG:/Users/ninjarocketman/garminDB/GarminDB/FitFileProcessor.pyc:No entry handler write_unknown_233_entry for message type <MessageType.unknown_233: 233> (66) from /Users/ninjarocketman/HealthData/FitFiles/2018_Monitoring/17917800570.fit: DataMessage: <MessageType.unknown_233: 233>: unknown_2(80 ([56, 48, 0, 16])),
DEBUG:/Users/ninjarocketman/garminDB/GarminDB/FitFileProcessor.pyc:No entry handler write_unknown_233_entry for message type <MessageType.unknown_233: 233> (66) from /Users/ninjarocketman/HealthData/FitFiles/2018_Monitoring/17917800570.fit: DataMessage: <MessageType.unknown_233: 233>: unknown_2(80 ([56, 48, 0, 16])),
DEBUG:/Users/ninjarocketman/garminDB/GarminDB/FitFileProcessor.pyc:No entry handler write_unknown_233_entry for message type <MessageType.unknown_233: 233> (66) from /Users/ninjarocketman/HealthData/FitFiles/2018_Monitoring/17917800570.fit: DataMessage: <MessageType.unknown_233: 233>: unknown_2(80 ([56, 48, 0, 16])),
DEBUG:/Users/ninjarocketman/garminDB/GarminDB/FitFileProcessor.pyc:No entry handler write_unknown_233_entry for message type <MessageType.unknown_233: 233> (66) from /Users/ninjarocketman/HealthData/FitFiles/2018_Monitoring/17917800570.fit: DataMessage: <MessageType.unknown_233: 233>: unknown_2(80 ([56, 48, 0, 16])),
DEBUG:/Users/ninjarocketman/garminDB/GarminDB/FitFileProcessor.pyc:No entry handler write_unknown_233_entry for message type <MessageType.unknown_233: 233> (66) from /Users/ninjarocketman/HealthData/FitFiles/2018_Monitoring/17917800570.fit: DataMessage: <MessageType.unknown_233: 233>: unknown_2(80 ([56, 48, 0, 16])),
DEBUG:/Users/ninjarocketman/garminDB/GarminDB/FitFileProcessor.pyc:No entry handler write_unknown_233_entry for message type <MessageType.unknown_233: 233> (66) from /Users/ninjarocketman/HealthData/FitFiles/2018_Monitoring/17917800570.fit: DataMessage: <MessageType.unknown_233: 233>: unknown_2(80 ([56, 48, 0, 16])),
DEBUG:/Users/ninjarocketman/garminDB/GarminDB/FitFileProcessor.pyc:No entry handler write_unknown_233_entry for message type <MessageType.unknown_233: 233> (66) from /Users/ninjarocketman/HealthData/FitFiles/2018_Monitoring/17917800570.fit: DataMessage: <MessageType.unknown_233: 233>: unknown_2(80 ([56, 48, 0, 16])),
DEBUG:/Users/ninjarocketman/garminDB/GarminDB/FitFileProcessor.pyc:No entry handler write_unknown_233_entry for message type <MessageType.unknown_233: 233> (66) from /Users/ninjarocketman/HealthData/FitFiles/2018_Monitoring/17917800570.fit: DataMessage: <MessageType.unknown_233: 233>: unknown_2(80 ([56, 48, 0, 16])),
DEBUG:/Users/ninjarocketman/garminDB/GarminDB/FitFileProcessor.pyc:No entry handler write_unknown_233_entry for message type <MessageType.unknown_233: 233> (66) from /Users/ninjarocketman/HealthData/FitFiles/2018_Monitoring/17917800570.fit: DataMessage: <MessageType.unknown_233: 233>: unknown_2(80 ([56, 48, 0, 16])),
DEBUG:/Users/ninjarocketman/garminDB/GarminDB/FitFileProcessor.pyc:No entry handler write_unknown_233_entry for message type <MessageType.unknown_233: 233> (66) from /Users/ninjarocketman/HealthData/FitFiles/2018_Monitoring/17917800570.fit: DataMessage: <MessageType.unknown_233: 233>: unknown_2(80 ([56, 48, 0, 16])),
DEBUG:/Users/ninjarocketman/garminDB/GarminDB/FitFileProcessor.pyc:No entry handler write_unknown_233_entry for message type <MessageType.unknown_233: 233> (66) from /Users/ninjarocketman/HealthData/FitFiles/2018_Monitoring/17917800570.fit: DataMessage: <MessageType.unknown_233: 233>: unknown_2(80 ([56, 48, 0, 16])),
DEBUG:/Users/ninjarocketman/garminDB/GarminDB/FitFileProcessor.pyc:No entry handler write_unknown_233_entry for message type <MessageType.unknown_233: 233> (66) from /Users/ninjarocketman/HealthData/FitFiles/2018_Monitoring/17917800570.fit: DataMessage: <MessageType.unknown_233: 233>: unknown_2(80 ([56, 48, 0, 16])),
DEBUG:/Users/ninjarocketman/garminDB/GarminDB/FitFileProcessor.pyc:No entry handler write_unknown_233_entry for message type <MessageType.unknown_233: 233> (66) from /Users/ninjarocketman/HealthData/FitFiles/2018_Monitoring/17917800570.fit: DataMessage: <MessageType.unknown_233: 233>: unknown_2(80 ([56, 48, 0, 16])),
DEBUG:/Users/ninjarocketman/garminDB/GarminDB/FitFileProcessor.pyc:No entry handler write_unknown_233_entry for message type <MessageType.unknown_233: 233> (66) from /Users/ninjarocketman/HealthData/FitFiles/2018_Monitoring/17917800570.fit: DataMessage: <MessageType.unknown_233: 233>: unknown_2(80 ([56, 48, 0, 16])),
DEBUG:/Users/ninjarocketman/garminDB/GarminDB/FitFileProcessor.pyc:No entry handler write_unknown_233_entry for message type <MessageType.unknown_233: 233> (66) from /Users/ninjarocketman/HealthData/FitFiles/2018_Monitoring/17917800570.fit: DataMessage: <MessageType.unknown_233: 233>: unknown_2(80 ([56, 48, 0, 16])),
DEBUG:/Users/ninjarocketman/garminDB/GarminDB/FitFileProcessor.pyc:No entry handler write_unknown_233_entry for message type <MessageType.unknown_233: 233> (66) from /Users/ninjarocketman/HealthData/FitFiles/2018_Monitoring/17917800570.fit: DataMessage: <MessageType.unknown_233: 233>: unknown_2(80 ([56, 48, 0, 16])),
DEBUG:/Users/ninjarocketman/garminDB/GarminDB/FitFileProcessor.pyc:No entry handler write_unknown_233_entry for message type <MessageType.unknown_233: 233> (66) from /Users/ninjarocketman/HealthData/FitFiles/2018_Monitoring/17917800570.fit: DataMessage: <MessageType.unknown_233: 233>: unknown_2(80 ([56, 48, 0, 16])),
DEBUG:/Users/ninjarocketman/garminDB/GarminDB/FitFileProcessor.pyc:No entry handler write_unknown_233_entry for message type <MessageType.unknown_233: 233> (66) from /Users/ninjarocketman/HealthData/FitFiles/2018_Monitoring/17917800570.fit: DataMessage: <MessageType.unknown_233: 233>: unknown_2(80 ([56, 48, 0, 16])),
DEBUG:/Users/ninjarocketman/garminDB/GarminDB/FitFileProcessor.pyc:No entry handler write_unknown_233_entry for message type <MessageType.unknown_233: 233> (66) from /Users/ninjarocketman/HealthData/FitFiles/2018_Monitoring/17917800570.fit: DataMessage: <MessageType.unknown_233: 233>: unknown_2(80 ([56, 48, 0, 16])),
DEBUG:/Users/ninjarocketman/garminDB/GarminDB/FitFileProcessor.pyc:No entry handler write_unknown_233_entry for message type <MessageType.unknown_233: 233> (66) from /Users/ninjarocketman/HealthData/FitFiles/2018_Monitoring/17917800570.fit: DataMessage: <MessageType.unknown_233: 233>: unknown_2(80 ([56, 48, 0, 16])),
DEBUG:/Users/ninjarocketman/garminDB/GarminDB/FitFileProcessor.pyc:No entry handler write_unknown_233_entry for message type <MessageType.unknown_233: 233> (66) from /Users/ninjarocketman/HealthData/FitFiles/2018_Monitoring/17917800570.fit: DataMessage: <MessageType.unknown_233: 233>: unknown_2(80 ([56, 48, 0, 16])),
DEBUG:/Users/ninjarocketman/garminDB/GarminDB/FitFileProcessor.pyc:No entry handler write_unknown_233_entry for message type <MessageType.unknown_233: 233> (66) from /Users/ninjarocketman/HealthData/FitFiles/2018_Monitoring/17917800570.fit: DataMessage: <MessageType.unknown_233: 233>: unknown_2(80 ([56, 48, 0, 16])),
DEBUG:/Users/ninjarocketman/garminDB/GarminDB/FitFileProcessor.pyc:No entry handler write_unknown_233_entry for message type <MessageType.unknown_233: 233> (66) from /Users/ninjarocketman/HealthData/FitFiles/2018_Monitoring/17917800570.fit: DataMessage: <MessageType.unknown_233: 233>: unknown_2(80 ([56, 48, 0, 16])),
DEBUG:/Users/ninjarocketman/garminDB/GarminDB/FitFileProcessor.pyc:No entry handler write_unknown_233_entry for message type <MessageType.unknown_233: 233> (66) from /Users/ninjarocketman/HealthData/FitFiles/2018_Monitoring/17917800570.fit: DataMessage: <MessageType.unknown_233: 233>: unknown_2(80 ([56, 48, 0, 16])),
DEBUG:/Users/ninjarocketman/garminDB/GarminDB/FitFileProcessor.pyc:No entry handler write_unknown_233_entry for message type <MessageType.unknown_233: 233> (66) from /Users/ninjarocketman/HealthData/FitFiles/2018_Monitoring/17917800570.fit: DataMessage: <MessageType.unknown_233: 233>: unknown_2(80 ([56, 48, 0, 16])),
DEBUG:/Users/ninjarocketman/garminDB/GarminDB/FitFileProcessor.pyc:No entry handler write_unknown_233_entry for message type <MessageType.unknown_233: 233> (66) from /Users/ninjarocketman/HealthData/FitFiles/2018_Monitoring/17917800570.fit: DataMessage: <MessageType.unknown_233: 233>: unknown_2(80 ([56, 48, 0, 16])),
DEBUG:/Users/ninjarocketman/garminDB/GarminDB/FitFileProcessor.pyc:No entry handler write_unknown_233_entry for message type <MessageType.unknown_233: 233> (66) from /Users/ninjarocketman/HealthData/FitFiles/2018_Monitoring/17917800570.fit: DataMessage: <MessageType.unknown_233: 233>: unknown_2(80 ([56, 48, 0, 16])),
DEBUG:/Users/ninjarocketman/garminDB/GarminDB/FitFileProcessor.pyc:No entry handler write_unknown_233_entry for message type <MessageType.unknown_233: 233> (66) from /Users/ninjarocketman/HealthData/FitFiles/2018_Monitoring/17917800570.fit: DataMessage: <MessageType.unknown_233: 233>: unknown_2(80 ([56, 48, 0, 16])),
DEBUG:/Users/ninjarocketman/garminDB/GarminDB/FitFileProcessor.pyc:No entry handler write_unknown_233_entry for message type <MessageType.unknown_233: 233> (66) from /Users/ninjarocketman/HealthData/FitFiles/2018_Monitoring/17917800570.fit: DataMessage: <MessageType.unknown_233: 233>: unknown_2(80 ([56, 48, 0, 16])),
DEBUG:/Users/ninjarocketman/garminDB/GarminDB/FitFileProcessor.pyc:Processed 66 <MessageType.unknown_233: 233> entries for /Users/ninjarocketman/HealthData/FitFiles/2018_Monitoring/17917800570.fit
DEBUG:/Users/ninjarocketman/garminDB/GarminDB/FitFileProcessor.pyc:Processed 65 <MessageType.stress_level: 227> entries for /Users/ninjarocketman/HealthData/FitFiles/2018_Monitoring/17917800570.fit
DEBUG:/Users/ninjarocketman/garminDB/GarminDB/FitFileProcessor.pyc:event message: {'ts_15': datetime.datetime(2018, 2, 14, 22, 38, 59), 'timestamp': datetime.datetime(2018, 2, 14, 23, 17, 59), 'unknown_14': 10, 'unknown_16': None, 'EventType': <EventType.marker: 3>, 'data16': 24, 'event': 54}
DEBUG:/Users/ninjarocketman/garminDB/GarminDB/FitFileProcessor.pyc:Processed 1 <MessageType.event: 21> entries for /Users/ninjarocketman/HealthData/FitFiles/2018_Monitoring/17917800570.fit
➜  GarminDB git:(master) ✗

from garmindb.

tcgoetz avatar tcgoetz commented on July 17, 2024

I think the file with the error is the one after 17917800570.fit since it parses fine for both me and you. Can you what file that is and try it with the make TEST_GC_ID=file_id test_monitoring_file command and if it has an error, please send me that one.

Since you hit an error, further processing stopped and it won't have processed activities and various other data types. You can try importing activities with make import_activities.

from garmindb.

tcgoetz avatar tcgoetz commented on July 17, 2024

As to what is wrong, the file that is failing has a device_type field that needs to be interpreted differently depending on the value of the source_type field, but there is no source_type field.

I should be able to figure it out if you send me the file.

from garmindb.

blaketwist avatar blaketwist commented on July 17, 2024

Hey Tom

First of all: Thank you for the great support!

I did a make import_monitoring again and ran into the same error as listed above with the same file. It's the 17460546472.fit it runs through with now (from my first posting), but with 17917800570 it doesn't work. It get the source-type error.
Link to the file: 17917800570

Also, I did a make import_activities. Some were imported and are now contained in the garmin_activities / activities DB. But I quickly ran into this error:

INFO:import_garmin_activities.py:No sport handler for type Sport.cycling from 2735303878
INFO:import_garmin_activities.py:Debug: 0 English units: True
INFO:/Users/nina/garminDB/GarminDB/FileProcessor.pyc:Reading directory: /Users/nina/HealthData/FitFiles/Activities
INFO:import_garmin_activities.py:Debug: 0 English units: True
INFO:/Users/nina/garminDB/GarminDB/FileProcessor.pyc:Reading directory: /Users/nina/HealthData/FitFiles/Activities
INFO:GarminDB.GarminDB:GarminDB: {'db_type': 'sqlite', 'db_path': '/Users/nina/HealthData/DBs'} debug: -1
INFO:GarminDB.MonitoringDB:MonitoringDB: {'db_type': 'sqlite', 'db_path': '/Users/nina/HealthData/DBs'} debug: -1
INFO:GarminDB.ActivitiesDB:ActivitiesDB: {'db_type': 'sqlite', 'db_path': '/Users/nina/HealthData/DBs'} debug: -1
INFO:/Users/nina/garminDB/GarminDB/FitFileProcessor.pyc:Debug: 0 English units: True
ERROR:import_garmin_activities.py:Failed to parse /Users/nina/HealthData/FitFiles/Activities/2628843302.fit: 'source_type'
Traceback (most recent call last):
  File "import_garmin_activities.py", line 399, in <module>
    main(sys.argv[1:])
  File "import_garmin_activities.py", line 395, in main
    gfd.process_files(db_params_dict)
  File "import_garmin_activities.py", line 45, in process_files
    fp.write_file(Fit.File(file_name, self.english_units))
  File "/Users/nina/garminDB/GarminDB/Fit/File.py", line 32, in __init__
    self.parse()
  File "/Users/nina/garminDB/GarminDB/Fit/File.py", line 77, in parse
    data_message = DataMessage(definition_message, self.file, self.english_units)
  File "/Users/nina/garminDB/GarminDB/Fit/DataMessage.py", line 45, in __init__
    control_values = [message_fields[control_field].value for control_field in field.dependant_field_control_fields]
KeyError: 'source_type'
make: *** [import_activities] Error 1
➜  GarminDB git:(master) ✗

It's also a source_type error and maybe related to the one when importing the monitoring data?

The link to the affected activity file: 2628843302

from garmindb.

tcgoetz avatar tcgoetz commented on July 17, 2024

2628843302 works for me now with the latest code.

Hey Tom

First of all: Thank you for the great support!

np. Thank you for helping me make it work for hardware I don't have.

2628843302 works for me now with the latest code. Update and let me know if there are further issues. If your metric please let me know if there are issues there. File a new bug for those.

from garmindb.

blaketwist avatar blaketwist commented on July 17, 2024

Ok. make import_monitoring works now for me.

make import_activity still throws an error and because it is an IntegrityError I post it here again. I hope that's right.

File download is here: 2959079849

Error:

ERROR:import_garmin_activities.py:Failed to parse /Users/ninjarocketman/HealthData/FitFiles/Activities/2959079849.fit: (sqlite3.IntegrityError) UNIQUE constraint failed: activity_records.timestamp [SQL: u'INSERT INTO activity_records (activity_id, record, timestamp, position_lat, position_long, distance, cadence, hr, alititude, speed, temperature) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)'] [parameters: (2959079849, 2, '2018-08-22 12:08:28.000000', 42.42712061660641, 3.1602475225085596, 0.0, None, 104, None, 0.0, None)] (Background on this error at: http://sqlalche.me/e/gkpj)
Traceback (most recent call last):
  File "import_garmin_activities.py", line 399, in <module>
    main(sys.argv[1:])
  File "import_garmin_activities.py", line 395, in main
    gfd.process_files(db_params_dict)
  File "import_garmin_activities.py", line 45, in process_files
    fp.write_file(Fit.File(file_name, self.english_units))
  File "/Users/ninjarocketman/garminDB/GarminDB/FitFileProcessor.py", line 67, in write_file
    self.write_message_types(fit_file, fit_file.message_types())
  File "/Users/ninjarocketman/garminDB/GarminDB/FitFileProcessor.py", line 59, in write_message_types
    self.write_message_type(fit_file, message_type)
  File "/Users/ninjarocketman/garminDB/GarminDB/FitFileProcessor.py", line 46, in write_message_type
    function(fit_file, message_type, messages)
  File "/Users/ninjarocketman/garminDB/GarminDB/FitFileProcessor.py", line 38, in write_generic
    function(fit_file, message)
  File "/Users/ninjarocketman/garminDB/GarminDB/FitFileProcessor.py", line 319, in write_record_entry
    GarminDB.ActivityRecords.create_or_update_not_none(self.garmin_act_db, record)
  File "/Users/ninjarocketman/garminDB/GarminDB/HealthDB/DB.py", line 256, in create_or_update_not_none
    cls.create_or_update(db, values_dict, True)
  File "/Users/ninjarocketman/garminDB/GarminDB/HealthDB/DB.py", line 251, in create_or_update
    DB.commit(session)
  File "/Users/ninjarocketman/garminDB/GarminDB/HealthDB/DB.py", line 58, in commit
    session.commit()
  File "/usr/local/lib/python2.7/site-packages/sqlalchemy/orm/session.py", line 943, in commit
    self.transaction.commit()
  File "/usr/local/lib/python2.7/site-packages/sqlalchemy/orm/session.py", line 467, in commit
    self._prepare_impl()
  File "/usr/local/lib/python2.7/site-packages/sqlalchemy/orm/session.py", line 447, in _prepare_impl
    self.session.flush()
  File "/usr/local/lib/python2.7/site-packages/sqlalchemy/orm/session.py", line 2254, in flush
    self._flush(objects)
  File "/usr/local/lib/python2.7/site-packages/sqlalchemy/orm/session.py", line 2381, in _flush
    transaction.rollback(_capture_exception=True)
  File "/usr/local/lib/python2.7/site-packages/sqlalchemy/util/langhelpers.py", line 66, in __exit__
    compat.reraise(exc_type, exc_value, exc_tb)
  File "/usr/local/lib/python2.7/site-packages/sqlalchemy/orm/session.py", line 2345, in _flush
    flush_context.execute()
  File "/usr/local/lib/python2.7/site-packages/sqlalchemy/orm/unitofwork.py", line 395, in execute
    rec.execute(self)
  File "/usr/local/lib/python2.7/site-packages/sqlalchemy/orm/unitofwork.py", line 560, in execute
    uow
  File "/usr/local/lib/python2.7/site-packages/sqlalchemy/orm/persistence.py", line 181, in save_obj
    mapper, table, insert)
  File "/usr/local/lib/python2.7/site-packages/sqlalchemy/orm/persistence.py", line 830, in _emit_insert_statements
    execute(statement, multiparams)
  File "/usr/local/lib/python2.7/site-packages/sqlalchemy/engine/base.py", line 948, in execute
    return meth(self, multiparams, params)
  File "/usr/local/lib/python2.7/site-packages/sqlalchemy/sql/elements.py", line 269, in _execute_on_connection
    return connection._execute_clauseelement(self, multiparams, params)
  File "/usr/local/lib/python2.7/site-packages/sqlalchemy/engine/base.py", line 1060, in _execute_clauseelement
    compiled_sql, distilled_params
  File "/usr/local/lib/python2.7/site-packages/sqlalchemy/engine/base.py", line 1200, in _execute_context
    context)
  File "/usr/local/lib/python2.7/site-packages/sqlalchemy/engine/base.py", line 1413, in _handle_dbapi_exception
    exc_info
  File "/usr/local/lib/python2.7/site-packages/sqlalchemy/util/compat.py", line 265, in raise_from_cause
    reraise(type(exception), exception, tb=exc_tb, cause=cause)
  File "/usr/local/lib/python2.7/site-packages/sqlalchemy/engine/base.py", line 1193, in _execute_context
    context)
  File "/usr/local/lib/python2.7/site-packages/sqlalchemy/engine/default.py", line 509, in do_execute
    cursor.execute(statement, parameters)
sqlalchemy.exc.IntegrityError: (sqlite3.IntegrityError) UNIQUE constraint failed: activity_records.timestamp [SQL: u'INSERT INTO activity_records (activity_id, record, timestamp, position_lat, position_long, distance, cadence, hr, alititude, speed, temperature) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)'] [parameters: (2959079849, 2, '2018-08-22 12:08:28.000000', 42.42712061660641, 3.1602475225085596, 0.0, None, 104, None, 0.0, None)] (Background on this error at: http://sqlalche.me/e/gkpj)
make: *** [import_activities] Error 1
➜  GarminDB git:(master)

from garmindb.

tcgoetz avatar tcgoetz commented on July 17, 2024

2959079849 works with the latest code.

from garmindb.

blaketwist avatar blaketwist commented on July 17, 2024

I tried it with make import_activities, a rebuild and also did a complete run again, just to verify. I still get an IntegrityError when importing the activities. This time with a different file:

Error:

INFO:/Users/ninjarocketman/garminDB/GarminDB/FitFileProcessor.pyc:file_id message: {'product': <GarminProduct.VivoSport: 2623>, 'number': None, 'time_created': datetime.datetime(2018, 1, 23, 9, 7, 26), 'serial_number': 3961162276, 'type': <FileType.activity: 4>, 'manufacturer': <Manufacturer.Garmin: 1>}
ERROR:import_garmin_activities.py:Failed to parse /Users/ninjarocketman/HealthData/FitFiles/Activities/2452900525.fit: (sqlite3.IntegrityError) UNIQUE constraint failed: activity_laps.stop_time [SQL: u'INSERT INTO activity_laps (activity_id, lap, start_time, stop_time, elapsed_time, moving_time, start_lat, start_long, stop_lat, stop_long, distance, cycles, avg_hr, max_hr, calories, avg_cadence, max_cadence, avg_speed, max_speed, ascent, descent, max_temperature, min_temperature, avg_temperature) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)'] [parameters: (2452900525, 1, '2018-01-23 09:07:26.000000', '2018-01-23 09:18:25.000000', '00:10:58.219000', '00:10:58.219000', 52.456620654050106, 13.511875699031085, 52.46097837203009, 13.521106460351053, 0.621371192237334, None, 119, 135, 64, 58, 61, 3.397906227630637, None, None, None, None, None, None)] (Background on this error at: http://sqlalche.me/e/gkpj)
Traceback (most recent call last):
  File "import_garmin_activities.py", line 399, in <module>
    main(sys.argv[1:])
  File "import_garmin_activities.py", line 395, in main
    gfd.process_files(db_params_dict)
  File "import_garmin_activities.py", line 45, in process_files
    fp.write_file(Fit.File(file_name, self.english_units))
  File "/Users/ninjarocketman/garminDB/GarminDB/FitFileProcessor.py", line 67, in write_file
    self.write_message_types(fit_file, fit_file.message_types())
  File "/Users/ninjarocketman/garminDB/GarminDB/FitFileProcessor.py", line 59, in write_message_types
    self.write_message_type(fit_file, message_type)
  File "/Users/ninjarocketman/garminDB/GarminDB/FitFileProcessor.py", line 46, in write_message_type
    function(fit_file, message_type, messages)
  File "/Users/ninjarocketman/garminDB/GarminDB/FitFileProcessor.py", line 38, in write_generic
    function(fit_file, message)
  File "/Users/ninjarocketman/garminDB/GarminDB/FitFileProcessor.py", line 276, in write_lap_entry
    GarminDB.ActivityLaps.create_or_update_not_none(self.garmin_act_db, lap)
  File "/Users/ninjarocketman/garminDB/GarminDB/HealthDB/DB.py", line 256, in create_or_update_not_none
    cls.create_or_update(db, values_dict, True)
  File "/Users/ninjarocketman/garminDB/GarminDB/HealthDB/DB.py", line 251, in create_or_update
    DB.commit(session)
  File "/Users/ninjarocketman/garminDB/GarminDB/HealthDB/DB.py", line 58, in commit
    session.commit()
  File "/usr/local/lib/python2.7/site-packages/sqlalchemy/orm/session.py", line 943, in commit
    self.transaction.commit()
  File "/usr/local/lib/python2.7/site-packages/sqlalchemy/orm/session.py", line 467, in commit
    self._prepare_impl()
  File "/usr/local/lib/python2.7/site-packages/sqlalchemy/orm/session.py", line 447, in _prepare_impl
    self.session.flush()
  File "/usr/local/lib/python2.7/site-packages/sqlalchemy/orm/session.py", line 2254, in flush
    self._flush(objects)
  File "/usr/local/lib/python2.7/site-packages/sqlalchemy/orm/session.py", line 2381, in _flush
    transaction.rollback(_capture_exception=True)
  File "/usr/local/lib/python2.7/site-packages/sqlalchemy/util/langhelpers.py", line 66, in __exit__
    compat.reraise(exc_type, exc_value, exc_tb)
  File "/usr/local/lib/python2.7/site-packages/sqlalchemy/orm/session.py", line 2345, in _flush
    flush_context.execute()
  File "/usr/local/lib/python2.7/site-packages/sqlalchemy/orm/unitofwork.py", line 395, in execute
    rec.execute(self)
  File "/usr/local/lib/python2.7/site-packages/sqlalchemy/orm/unitofwork.py", line 560, in execute
    uow
  File "/usr/local/lib/python2.7/site-packages/sqlalchemy/orm/persistence.py", line 181, in save_obj
    mapper, table, insert)
  File "/usr/local/lib/python2.7/site-packages/sqlalchemy/orm/persistence.py", line 830, in _emit_insert_statements
    execute(statement, multiparams)
  File "/usr/local/lib/python2.7/site-packages/sqlalchemy/engine/base.py", line 948, in execute
    return meth(self, multiparams, params)
  File "/usr/local/lib/python2.7/site-packages/sqlalchemy/sql/elements.py", line 269, in _execute_on_connection
    return connection._execute_clauseelement(self, multiparams, params)
  File "/usr/local/lib/python2.7/site-packages/sqlalchemy/engine/base.py", line 1060, in _execute_clauseelement
    compiled_sql, distilled_params
  File "/usr/local/lib/python2.7/site-packages/sqlalchemy/engine/base.py", line 1200, in _execute_context
    context)
  File "/usr/local/lib/python2.7/site-packages/sqlalchemy/engine/base.py", line 1413, in _handle_dbapi_exception
    exc_info
  File "/usr/local/lib/python2.7/site-packages/sqlalchemy/util/compat.py", line 265, in raise_from_cause
    reraise(type(exception), exception, tb=exc_tb, cause=cause)
  File "/usr/local/lib/python2.7/site-packages/sqlalchemy/engine/base.py", line 1193, in _execute_context
    context)
  File "/usr/local/lib/python2.7/site-packages/sqlalchemy/engine/default.py", line 509, in do_execute
    cursor.execute(statement, parameters)
sqlalchemy.exc.IntegrityError: (sqlite3.IntegrityError) UNIQUE constraint failed: activity_laps.stop_time [SQL: u'INSERT INTO activity_laps (activity_id, lap, start_time, stop_time, elapsed_time, moving_time, start_lat, start_long, stop_lat, stop_long, distance, cycles, avg_hr, max_hr, calories, avg_cadence, max_cadence, avg_speed, max_speed, ascent, descent, max_temperature, min_temperature, avg_temperature) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)'] [parameters: (2452900525, 1, '2018-01-23 09:07:26.000000', '2018-01-23 09:18:25.000000', '00:10:58.219000', '00:10:58.219000', 52.456620654050106, 13.511875699031085, 52.46097837203009, 13.521106460351053, 0.621371192237334, None, 119, 135, 64, 58, 61, 3.397906227630637, None, None, None, None, None, None)] (Background on this error at: http://sqlalche.me/e/gkpj)
make: *** [import_activities] Error 1
➜  GarminDB git:(master)

Link to 2452900525

from garmindb.

tcgoetz avatar tcgoetz commented on July 17, 2024

OK. Another update. Try again.

from garmindb.

blaketwist avatar blaketwist commented on July 17, 2024

Hm, I still get the error for the same file.

INFO:/Users/ninjarocketman/garminDB/GarminDB/FitFileProcessor.pyc:file_id message: {'product': <GarminProduct.VivoSport: 2623>, 'number': None, 'time_created': datetime.datetime(2018, 1, 23, 9, 7, 26), 'serial_number': 3961162276, 'type': <FileType.activity: 4>, 'manufacturer': <Manufacturer.Garmin: 1>}
ERROR:import_garmin_activities.py:Failed to parse /Users/ninjarocketman/HealthData/FitFiles/Activities/2452900525.fit: (sqlite3.IntegrityError) UNIQUE constraint failed: activities.stop_time [SQL: u'UPDATE activities SET start_time=?, stop_time=?, elapsed_time=?, moving_time=?, start_lat=?, start_long=?, distance=?, laps=?, avg_hr=?, max_hr=?, calories=?, avg_cadence=?, max_cadence=?, avg_speed=? WHERE activities.activity_id = ?'] [parameters: ('2018-01-23 09:25:51.000000', '2018-01-23 09:39:50.000000', '00:13:33.509000', '00:01:50.490000', 52.458328402730096, 13.52720092873103, 0.0755400958402927, 1, 109, 116, 9, 55, 70, 2.4606299212598426, 2452900525)] (Background on this error at: http://sqlalche.me/e/gkpj)
Traceback (most recent call last):
  File "import_garmin_activities.py", line 399, in <module>
    main(sys.argv[1:])
  File "import_garmin_activities.py", line 395, in main
    gfd.process_files(db_params_dict)
  File "import_garmin_activities.py", line 45, in process_files
    fp.write_file(Fit.File(file_name, self.english_units))
  File "/Users/ninjarocketman/garminDB/GarminDB/FitFileProcessor.py", line 67, in write_file
    self.write_message_types(fit_file, fit_file.message_types())
  File "/Users/ninjarocketman/garminDB/GarminDB/FitFileProcessor.py", line 59, in write_message_types
    self.write_message_type(fit_file, message_type)
  File "/Users/ninjarocketman/garminDB/GarminDB/FitFileProcessor.py", line 46, in write_message_type
    function(fit_file, message_type, messages)
  File "/Users/ninjarocketman/garminDB/GarminDB/FitFileProcessor.py", line 38, in write_generic
    function(fit_file, message)
  File "/Users/ninjarocketman/garminDB/GarminDB/FitFileProcessor.py", line 237, in write_session_entry
    GarminDB.Activities.create_or_update_not_none(self.garmin_act_db, activity)
  File "/Users/ninjarocketman/garminDB/GarminDB/HealthDB/DB.py", line 256, in create_or_update_not_none
    cls.create_or_update(db, values_dict, True)
  File "/Users/ninjarocketman/garminDB/GarminDB/HealthDB/DB.py", line 251, in create_or_update
    DB.commit(session)
  File "/Users/ninjarocketman/garminDB/GarminDB/HealthDB/DB.py", line 58, in commit
    session.commit()
  File "/usr/local/lib/python2.7/site-packages/sqlalchemy/orm/session.py", line 943, in commit
    self.transaction.commit()
  File "/usr/local/lib/python2.7/site-packages/sqlalchemy/orm/session.py", line 467, in commit
    self._prepare_impl()
  File "/usr/local/lib/python2.7/site-packages/sqlalchemy/orm/session.py", line 447, in _prepare_impl
    self.session.flush()
  File "/usr/local/lib/python2.7/site-packages/sqlalchemy/orm/session.py", line 2254, in flush
    self._flush(objects)
  File "/usr/local/lib/python2.7/site-packages/sqlalchemy/orm/session.py", line 2381, in _flush
    transaction.rollback(_capture_exception=True)
  File "/usr/local/lib/python2.7/site-packages/sqlalchemy/util/langhelpers.py", line 66, in __exit__
    compat.reraise(exc_type, exc_value, exc_tb)
  File "/usr/local/lib/python2.7/site-packages/sqlalchemy/orm/session.py", line 2345, in _flush
    flush_context.execute()
  File "/usr/local/lib/python2.7/site-packages/sqlalchemy/orm/unitofwork.py", line 395, in execute
    rec.execute(self)
  File "/usr/local/lib/python2.7/site-packages/sqlalchemy/orm/unitofwork.py", line 560, in execute
    uow
  File "/usr/local/lib/python2.7/site-packages/sqlalchemy/orm/persistence.py", line 177, in save_obj
    mapper, table, update)
  File "/usr/local/lib/python2.7/site-packages/sqlalchemy/orm/persistence.py", line 768, in _emit_update_statements
    execute(statement, multiparams)
  File "/usr/local/lib/python2.7/site-packages/sqlalchemy/engine/base.py", line 948, in execute
    return meth(self, multiparams, params)
  File "/usr/local/lib/python2.7/site-packages/sqlalchemy/sql/elements.py", line 269, in _execute_on_connection
    return connection._execute_clauseelement(self, multiparams, params)
  File "/usr/local/lib/python2.7/site-packages/sqlalchemy/engine/base.py", line 1060, in _execute_clauseelement
    compiled_sql, distilled_params
  File "/usr/local/lib/python2.7/site-packages/sqlalchemy/engine/base.py", line 1200, in _execute_context
    context)
  File "/usr/local/lib/python2.7/site-packages/sqlalchemy/engine/base.py", line 1413, in _handle_dbapi_exception
    exc_info
  File "/usr/local/lib/python2.7/site-packages/sqlalchemy/util/compat.py", line 265, in raise_from_cause
    reraise(type(exception), exception, tb=exc_tb, cause=cause)
  File "/usr/local/lib/python2.7/site-packages/sqlalchemy/engine/base.py", line 1193, in _execute_context
    context)
  File "/usr/local/lib/python2.7/site-packages/sqlalchemy/engine/default.py", line 509, in do_execute
    cursor.execute(statement, parameters)
sqlalchemy.exc.IntegrityError: (sqlite3.IntegrityError) UNIQUE constraint failed: activities.stop_time [SQL: u'UPDATE activities SET start_time=?, stop_time=?, elapsed_time=?, moving_time=?, start_lat=?, start_long=?, distance=?, laps=?, avg_hr=?, max_hr=?, calories=?, avg_cadence=?, max_cadence=?, avg_speed=? WHERE activities.activity_id = ?'] [parameters: ('2018-01-23 09:25:51.000000', '2018-01-23 09:39:50.000000', '00:13:33.509000', '00:01:50.490000', 52.458328402730096, 13.52720092873103, 0.0755400958402927, 1, 109, 116, 9, 55, 70, 2.4606299212598426, 2452900525)] (Background on this error at: http://sqlalche.me/e/gkpj)
make: *** [import_activities] Error 1
➜  GarminDB git:(master)

from garmindb.

blaketwist avatar blaketwist commented on July 17, 2024

Ok, I narrowed it down to two files. When I remove them, I can run make rebuild_dbs without any errors. For the two files 2452900525 and 2452900522 I still get the IntegrityError. When I run make TEST_GC_ID=2452900522 test_activities_file I get a very very long debug output. The last one and error are listed. Maybe you can tell me what I should filter for?

DEBUG:/Users/ninjarocketman/garminDB/GarminDB/FitFileProcessor.pyc:session message: {'max_cadence': 70, 'total_timer_time': datetime.time(0, 1, 50, 490000), 'first_lap_index': 0, 'length_count': None, 'SessionTrigger': <SessionTrigger.activity_end: 0>, 'avg_cadence': 55, 'num_laps': 1, 'sport': <Sport.running: 1>, 'start_position_long': 13.52720092873103, 'message_index': {'selected': False, 'value': 0}, 'total_swim_time': None, 'num_active_lengths': None, 'total_calories': 9, 'EventType': <EventType.stop: 1>, 'timestamp': datetime.datetime(2018, 1, 23, 9, 39, 50), 'avg_heart_rate': 109, 'start_time': datetime.datetime(2018, 1, 23, 9, 25, 51), 'start_position_lat': 52.458328402730096, 'total_distance': 0.0755400958402927, 'sub_sport': <SubSport.generic: 0>, 'total_elapsed_time': datetime.time(0, 13, 33, 509000), 'total_steps': 420.0, 'max_heart_rate': 116, 'avg_speed': 2.4606299212598426, 'Event': <Event.lap: 9>}
ERROR:import_garmin_activities.py:Failed to parse /Users/ninjarocketman/Downloads/2452900522.fit: (sqlite3.IntegrityError) UNIQUE constraint failed: activities.stop_time [SQL: u'UPDATE activities SET start_time=?, stop_time=?, elapsed_time=?, moving_time=?, start_lat=?, start_long=?, distance=?, laps=?, avg_hr=?, max_hr=?, calories=?, avg_cadence=?, max_cadence=?, avg_speed=? WHERE activities.activity_id = ?'] [parameters: ('2018-01-23 09:25:51.000000', '2018-01-23 09:39:50.000000', '00:13:33.509000', '00:01:50.490000', 52.458328402730096, 13.52720092873103, 0.0755400958402927, 1, 109, 116, 9, 55, 70, 2.4606299212598426, 2452900522)] (Background on this error at: http://sqlalche.me/e/gkpj)
Traceback (most recent call last):
  File "import_garmin_activities.py", line 399, in <module>
    main(sys.argv[1:])
  File "import_garmin_activities.py", line 395, in main
    gfd.process_files(db_params_dict)
  File "import_garmin_activities.py", line 45, in process_files
    fp.write_file(Fit.File(file_name, self.english_units))
  File "/Users/ninjarocketman/garminDB/GarminDB/FitFileProcessor.py", line 67, in write_file
    self.write_message_types(fit_file, fit_file.message_types())
  File "/Users/ninjarocketman/garminDB/GarminDB/FitFileProcessor.py", line 59, in write_message_types
    self.write_message_type(fit_file, message_type)
  File "/Users/ninjarocketman/garminDB/GarminDB/FitFileProcessor.py", line 46, in write_message_type
    function(fit_file, message_type, messages)
  File "/Users/ninjarocketman/garminDB/GarminDB/FitFileProcessor.py", line 38, in write_generic
    function(fit_file, message)
  File "/Users/ninjarocketman/garminDB/GarminDB/FitFileProcessor.py", line 237, in write_session_entry
    GarminDB.Activities.create_or_update_not_none(self.garmin_act_db, activity)
  File "/Users/ninjarocketman/garminDB/GarminDB/HealthDB/DB.py", line 256, in create_or_update_not_none
    cls.create_or_update(db, values_dict, True)
  File "/Users/ninjarocketman/garminDB/GarminDB/HealthDB/DB.py", line 251, in create_or_update
    DB.commit(session)
  File "/Users/ninjarocketman/garminDB/GarminDB/HealthDB/DB.py", line 58, in commit
    session.commit()
  File "/usr/local/lib/python2.7/site-packages/sqlalchemy/orm/session.py", line 943, in commit
    self.transaction.commit()
  File "/usr/local/lib/python2.7/site-packages/sqlalchemy/orm/session.py", line 467, in commit
    self._prepare_impl()
  File "/usr/local/lib/python2.7/site-packages/sqlalchemy/orm/session.py", line 447, in _prepare_impl
    self.session.flush()
  File "/usr/local/lib/python2.7/site-packages/sqlalchemy/orm/session.py", line 2254, in flush
    self._flush(objects)
  File "/usr/local/lib/python2.7/site-packages/sqlalchemy/orm/session.py", line 2381, in _flush
    transaction.rollback(_capture_exception=True)
  File "/usr/local/lib/python2.7/site-packages/sqlalchemy/util/langhelpers.py", line 66, in __exit__
    compat.reraise(exc_type, exc_value, exc_tb)
  File "/usr/local/lib/python2.7/site-packages/sqlalchemy/orm/session.py", line 2345, in _flush
    flush_context.execute()
  File "/usr/local/lib/python2.7/site-packages/sqlalchemy/orm/unitofwork.py", line 395, in execute
    rec.execute(self)
  File "/usr/local/lib/python2.7/site-packages/sqlalchemy/orm/unitofwork.py", line 560, in execute
    uow
  File "/usr/local/lib/python2.7/site-packages/sqlalchemy/orm/persistence.py", line 177, in save_obj
    mapper, table, update)
  File "/usr/local/lib/python2.7/site-packages/sqlalchemy/orm/persistence.py", line 768, in _emit_update_statements
    execute(statement, multiparams)
  File "/usr/local/lib/python2.7/site-packages/sqlalchemy/engine/base.py", line 948, in execute
    return meth(self, multiparams, params)
  File "/usr/local/lib/python2.7/site-packages/sqlalchemy/sql/elements.py", line 269, in _execute_on_connection
    return connection._execute_clauseelement(self, multiparams, params)
  File "/usr/local/lib/python2.7/site-packages/sqlalchemy/engine/base.py", line 1060, in _execute_clauseelement
    compiled_sql, distilled_params
  File "/usr/local/lib/python2.7/site-packages/sqlalchemy/engine/base.py", line 1200, in _execute_context
    context)
  File "/usr/local/lib/python2.7/site-packages/sqlalchemy/engine/base.py", line 1413, in _handle_dbapi_exception
    exc_info
  File "/usr/local/lib/python2.7/site-packages/sqlalchemy/util/compat.py", line 265, in raise_from_cause
    reraise(type(exception), exception, tb=exc_tb, cause=cause)
  File "/usr/local/lib/python2.7/site-packages/sqlalchemy/engine/base.py", line 1193, in _execute_context
    context)
  File "/usr/local/lib/python2.7/site-packages/sqlalchemy/engine/default.py", line 509, in do_execute
    cursor.execute(statement, parameters)
sqlalchemy.exc.IntegrityError: (sqlite3.IntegrityError) UNIQUE constraint failed: activities.stop_time [SQL: u'UPDATE activities SET start_time=?, stop_time=?, elapsed_time=?, moving_time=?, start_lat=?, start_long=?, distance=?, laps=?, avg_hr=?, max_hr=?, calories=?, avg_cadence=?, max_cadence=?, avg_speed=? WHERE activities.activity_id = ?'] [parameters: ('2018-01-23 09:25:51.000000', '2018-01-23 09:39:50.000000', '00:13:33.509000', '00:01:50.490000', 52.458328402730096, 13.52720092873103, 0.0755400958402927, 1, 109, 116, 9, 55, 70, 2.4606299212598426, 2452900522)] (Background on this error at: http://sqlalche.me/e/gkpj)
make: *** [test_activities_file] Error 1

from garmindb.

tcgoetz avatar tcgoetz commented on July 17, 2024

Try again.

from garmindb.

blaketwist avatar blaketwist commented on July 17, 2024

That was it! All data was imported without any errors. Thank you very much!

from garmindb.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.