Gateway: Improve the new logging elements

* There are different source-keys for much of this.
* Have game_version *then* game_build.
* Where a message doesn't have a relevant field, set to '-'.
This commit is contained in:
Athanasius 2023-01-19 16:01:53 +00:00
parent d983a6c806
commit 6a514d3bae
No known key found for this signature in database
GPG Key ID: 772697E181BB2767

View File

@ -76,8 +76,8 @@ def extract_message_details(parsed_message):
uploader_id = '<<UNKNOWN>>'
software_name = '<<UNKNOWN>>'
software_version = '<<UNKNOWN>>'
game_build = '<<UNKNOWN>>'
game_version = '<<UNKNOWN>>'
game_build = '<<UNKNOWN>>'
schema_ref = '<<UNKNOWN>>'
journal_event = '<<UNKNOWN>>'
system_name = '<<UNKNOWN>>'
@ -95,12 +95,12 @@ def extract_message_details(parsed_message):
if 'softwareVersion' in parsed_message['header']:
software_version = parsed_message['header']['softwareVersion']
if 'gamebuild' in parsed_message['header']:
game_build = parsed_message['header']['gamebuild']
if 'gameversion' in parsed_message['header']:
game_version = parsed_message['header']['gameversion']
if 'gamebuild' in parsed_message['header']:
game_build = parsed_message['header']['gamebuild']
if '$schemaRef' in parsed_message:
schema_ref = parsed_message['$schemaRef']
@ -113,17 +113,32 @@ def extract_message_details(parsed_message):
else:
journal_event = '-'
if 'SystemName' in parsed_message['message']:
if 'systemName' in parsed_message['message']:
system_name = parsed_message['message']['systemName']
elif 'SystemName' in parsed_message['message']:
system_name = parsed_message['message']['SystemName']
elif 'StarSystem' in parsed_message['message']:
system_name = parsed_message['message']['StarSystem']
else:
system_name = '-'
if 'SystemAddress' in parsed_message['message']:
system_address = parsed_message['message']['SystemAddress']
if 'StationName' in parsed_message['message']:
else:
system_address = '-'
if 'stationName' in parsed_message['message']:
station_name = parsed_message['message']['stationName']
elif 'StationName' in parsed_message['message']:
station_name = parsed_message['message']['StationName']
else:
station_name = '-'
if 'marketId' in parsed_message['message']:
station_marketid = parsed_message['message']['marketId']
@ -131,7 +146,10 @@ def extract_message_details(parsed_message):
elif 'MarketID' in parsed_message['message']:
station_marketid = parsed_message['message']['MarketID']
return uploader_id, software_name, software_version, schema_ref, journal_event, game_build, game_version, \
else:
station_marketid = '-'
return uploader_id, software_name, software_version, schema_ref, journal_event, game_version, game_build, \
system_name, system_address, station_name, station_marketid
def configure():
@ -249,12 +267,12 @@ def parse_and_error_handle(data):
gevent.spawn(push_message, parsed_message, parsed_message['$schemaRef'])
try:
uploader_id, software_name, software_version, schema_ref, journal_event, game_build, game_version, \
uploader_id, software_name, software_version, schema_ref, journal_event, game_version, game_build, \
system_name, system_address, station_name, station_marketid = extract_message_details(parsed_message)
logger.info('Accepted (%d, "%s", "%s", "%s", "%s", "%s", "%s", "%s", "%s", "%s", "%s", "%s") from %s' % (
request.content_length,
uploader_id, software_name, software_version, schema_ref, journal_event,
game_build, game_version,
game_version, game_build,
system_name, system_address,
station_name, station_marketid,
get_remote_address()
@ -268,13 +286,13 @@ def parse_and_error_handle(data):
else:
try:
uploader_id, software_name, software_version, schema_ref, journal_event, game_build, game_version, \
uploader_id, software_name, software_version, schema_ref, journal_event, game_version, game_build, \
system_name, system_address, station_name, station_marketid = extract_message_details(parsed_message)
logger.error('Failed Validation "%s" (%d, "%s", "%s", "%s", "%s", "%s", "%s", "%s", "%s", "%s", "%s", "%s") from %s' % (
str(validationResults.messages),
request.content_length,
uploader_id, software_name, software_version, schema_ref, journal_event,
game_build, game_version,
game_version, game_build,
system_name, system_address,
station_name, station_marketid,
get_remote_address()