Added connectivity Logs

qlline_design_update
Faiz Hashmi 4 weeks ago
parent 5fa860a4f5
commit 510f50fc7f

@ -28,6 +28,7 @@ class AppStrings {
static String dataLogsFileName = "data_logs.txt";
static String errorLogsFileName = "error_logs.txt";
static String connectivityLogsFileName = "connectivity_logs.txt";
static String openAppNativeFunctionName = "reopenApp";

@ -26,9 +26,7 @@ class MyApp extends StatelessWidget {
return OrientationBuilder(builder: (context, orientation) {
SizeConfig().init(constraints, orientation);
SystemChrome.setEnabledSystemUIMode(SystemUiMode.manual, overlays: []);
SystemChrome.setPreferredOrientations([
DeviceOrientation.portraitUp,
]);
SystemChrome.setPreferredOrientations([DeviceOrientation.portraitUp]);
return MultiProvider(
providers: [
ChangeNotifierProvider<ScreenConfigViewModel>(create: (context) => getIt.get<ScreenConfigViewModel>()),

@ -34,9 +34,15 @@ class LoggerServiceImp implements LoggerService {
await logDir.create(recursive: true);
}
final logFileName = type == LogTypeEnum.error
? AppStrings.errorLogsFileName
: AppStrings.dataLogsFileName;
String logFileName = "";
if (type == LogTypeEnum.error) {
logFileName = AppStrings.errorLogsFileName;
} else if (type == LogTypeEnum.data) {
logFileName = AppStrings.dataLogsFileName;
} else {
logFileName = AppStrings.connectivityLogsFileName;
}
final file = File('${logDir.path}/${screenConfigViewModel.currentScreenIP}_$logFileName');
@ -45,21 +51,18 @@ class LoggerServiceImp implements LoggerService {
final lastLogsClearedAt = screenConfigViewModel.lastTimeLogsCleared;
final now = DateTime.now();
if (lastLogsClearedAt != null &&
now.difference(lastLogsClearedAt).inHours >= AppConstants.clearLogsHoursThreshold) {
if (lastLogsClearedAt != null && now.difference(lastLogsClearedAt).inHours >= AppConstants.clearLogsHoursThreshold) {
final clearingMessage = "[$timestamp] [SOURCE: $source] ${type.name.toUpperCase()}: LOGS HAVE BEEN CLEARED\n";
await file.writeAsString(clearingMessage);
screenConfigViewModel.lastTimeLogsCleared = now;
cacheService.setLastTimeLogsCleared(lastTimeCleared: now.millisecondsSinceEpoch);
}
await file.writeAsString("$formattedMessage\n", mode: FileMode.append);
} catch (e) {
logger.e('Logging failed: $e');
}
}
@override
void logError(String message) {
logger.e(message);

@ -13,7 +13,6 @@ enum CallTypeEnum {
none, // 6
}
enum ScreenOrientationEnum {
portraitUp, // 1
portraitDown, // 2
@ -52,6 +51,5 @@ enum KioskScreenStateEnums {
enum LogTypeEnum {
data,
error,
connectivity,
}

@ -89,7 +89,7 @@ class QueuingViewModel extends ChangeNotifier {
Future<void> onHubReconnected(var response) async {
log("onHubConnected: $response");
loggerService.logToFile(message: response.toString(), source: "onHubReconnected -> queueing_view_model.dart ", type: LogTypeEnum.data);
loggerService.logToFile(message: response.toString(), source: "onHubReconnected -> queueing_view_model.dart ", type: LogTypeEnum.connectivity);
ScreenConfigViewModel screenConfigViewModel = getIt.get<ScreenConfigViewModel>();
screenConfigViewModel.updateIsHubConnected(true);
@ -98,7 +98,7 @@ class QueuingViewModel extends ChangeNotifier {
Future<void> onHubDisconnected(var response) async {
log("onHubDisconnected: $response");
loggerService.logToFile(message: response.toString(), source: "onHubDisconnected -> queueing_view_model.dart ", type: LogTypeEnum.data);
loggerService.logToFile(message: response.toString(), source: "onHubDisconnected -> queueing_view_model.dart ", type: LogTypeEnum.connectivity);
ScreenConfigViewModel screenConfigViewModel = getIt.get<ScreenConfigViewModel>();
screenConfigViewModel.updateIsHubConnected(false);

@ -558,11 +558,18 @@ class ScreenConfigViewModel extends ChangeNotifier {
void syncHubConnectionState() async {
QueuingViewModel queuingViewModel = getIt.get<QueuingViewModel>();
bool newState = (queuingViewModel.signalrRepo as SignalrRepoImp).isConnected;
loggerService.logToFile(
message: "Hub Current Status : $newState",
source: "syncHubConnectionState-> screen_config_view_model.dart",
type: LogTypeEnum.connectivity,
);
log("[isHubConnected: $isHubConnected] , [newState: $newState]");
if (isHubConnected != newState) {
updateIsHubConnected(newState);
}
if (!isHubConnected) {
log("Hub is Not Connected!, I will try to reconnect now.");
QueuingViewModel queuingViewModel = getIt.get<QueuingViewModel>();
bool? status = await queuingViewModel.startHubConnection();
// syncHubConnectionState will update isHubConnected

Loading…
Cancel
Save