@@ -351,11 +351,11 @@ def get_recent_logs(experiment: str) -> ResponseReturnValue:
351351
352352 try :
353353 recent_logs = query_app_db (
354- f"""SELECT l.timestamp, level, l.pioreactor_unit, message, task
354+ f"""SELECT l.timestamp, level, l.pioreactor_unit, message, task, l.experiment
355355 FROM logs AS l
356356 WHERE (l.experiment=? OR l.experiment=?)
357357 AND ({ get_level_string (min_level )} )
358- AND l.timestamp >= MAX( STRFTIME('%Y-%m-%dT%H:%M:%f000Z', 'NOW', '-24 hours')) , (SELECT created_at FROM experiments where experiment=?) )
358+ AND l.timestamp >= MAX( STRFTIME('%Y-%m-%dT%H:%M:%f000Z', 'NOW', '-24 hours'), (SELECT created_at FROM experiments where experiment=?) )
359359 ORDER BY l.timestamp DESC LIMIT 50;""" ,
360360 (experiment , UNIVERSAL_EXPERIMENT , experiment ),
361361 )
@@ -368,14 +368,14 @@ def get_recent_logs(experiment: str) -> ResponseReturnValue:
368368
369369
370370@api .route ("/experiments/<experiment>/logs" , methods = ["GET" ])
371- def get_logs (experiment : str ) -> ResponseReturnValue :
371+ def get_exp_logs (experiment : str ) -> ResponseReturnValue :
372372 """Shows event logs from all units, uses pagination."""
373373
374374 skip = int (request .args .get ("skip" , 0 ))
375375
376376 try :
377377 recent_logs = query_app_db (
378- f"""SELECT l.timestamp, level, l.pioreactor_unit, message, task
378+ f"""SELECT l.timestamp, level, l.pioreactor_unit, message, task, l.experiment
379379 FROM logs AS l
380380 JOIN experiment_worker_assignments_history h
381381 on h.pioreactor_unit = l.pioreactor_unit
@@ -386,6 +386,26 @@ def get_logs(experiment: str) -> ResponseReturnValue:
386386 (experiment , UNIVERSAL_EXPERIMENT ),
387387 )
388388
389+ except Exception as e :
390+ publish_to_error_log (str (e ), "get_exp_logs" )
391+ return Response (status = 500 )
392+
393+ return jsonify (recent_logs )
394+
395+
396+ @api .route ("/logs" , methods = ["GET" ])
397+ def get_logs () -> ResponseReturnValue :
398+ """Shows event logs from all units, uses pagination."""
399+
400+ skip = int (request .args .get ("skip" , 0 ))
401+
402+ try :
403+ recent_logs = query_app_db (
404+ f"""SELECT l.timestamp, level, l.pioreactor_unit, message, task, l.experiment
405+ FROM logs AS l
406+ ORDER BY l.timestamp DESC LIMIT 50 OFFSET { skip } ;"""
407+ )
408+
389409 except Exception as e :
390410 publish_to_error_log (str (e ), "get_logs" )
391411 return Response (status = 500 )
@@ -420,7 +440,7 @@ def get_recent_logs_for_unit_and_experiment(
420440
421441 try :
422442 recent_logs = query_app_db (
423- f"""SELECT l.timestamp, level, l.pioreactor_unit, message, task
443+ f"""SELECT l.timestamp, level, l.pioreactor_unit, message, task, l.experiment
424444 FROM logs AS l
425445 WHERE (l.experiment=? OR l.experiment=?)
426446 AND (l.pioreactor_unit=? or l.pioreactor_unit=?)
@@ -445,7 +465,7 @@ def get_logs_for_unit_and_experiment(pioreactor_unit: str, experiment: str) -> R
445465
446466 try :
447467 recent_logs = query_app_db (
448- f"""SELECT l.timestamp, level, l.pioreactor_unit, message, task
468+ f"""SELECT l.timestamp, level, l.pioreactor_unit, message, task, l.experiment
449469 FROM logs AS l
450470 JOIN experiment_worker_assignments_history h
451471 on h.pioreactor_unit = l.pioreactor_unit
@@ -458,7 +478,29 @@ def get_logs_for_unit_and_experiment(pioreactor_unit: str, experiment: str) -> R
458478 )
459479
460480 except Exception as e :
461- publish_to_error_log (str (e ), "get_get_logs_for_unit_and_experimentlogs" )
481+ publish_to_error_log (str (e ), "get_for_unit_and_experiment" )
482+ return Response (status = 500 )
483+
484+ return jsonify (recent_logs )
485+
486+
487+ @api .route ("/units/<pioreactor_unit>/logs" , methods = ["GET" ])
488+ def get_logs_for_unit (pioreactor_unit : str ) -> ResponseReturnValue :
489+ """Shows event logs from all units, uses pagination."""
490+
491+ skip = int (request .args .get ("skip" , 0 ))
492+
493+ try :
494+ recent_logs = query_app_db (
495+ f"""SELECT l.timestamp, level, l.pioreactor_unit, message, task, l.experiment
496+ FROM logs AS l
497+ WHERE (l.pioreactor_unit=? or l.pioreactor_unit=?)
498+ ORDER BY l.timestamp DESC LIMIT 50 OFFSET { skip } ;""" ,
499+ (pioreactor_unit , UNIVERSAL_IDENTIFIER ),
500+ )
501+
502+ except Exception as e :
503+ publish_to_error_log (str (e ), "get_logs_for_unit" )
462504 return Response (status = 500 )
463505
464506 return jsonify (recent_logs )
0 commit comments