update vers x resettare invio se dopo 1 minuti NON HO current....

This commit is contained in:
Samuele E. Locatelli
2019-12-04 15:42:43 +01:00
parent f99bca96ee
commit 2cce3c49e5
3 changed files with 45 additions and 3 deletions
+1
View File
@@ -59,6 +59,7 @@ DISABLE_PZCOUNT=TRUE
ENABLE_DYN_DATA=FALSE
FORCE_DYN_DATA=TRUE
ENABLE_DATA_FILTER=TRUE
ENABLE_MTC_RESTART=TRUE
; conf parametri memoria READ/WRITE
PARAM_CONF=IMI_50.json
+43 -2
View File
@@ -39,6 +39,14 @@ namespace IOB_WIN
/// </summary>
protected DateTime vetoCheckStatus = DateTime.Now;
/// <summary>
/// Ultimo current received x gestione update periodico...
/// </summary>
protected DateTime lastCurrent = DateTime.Now.AddMinutes(-1);
/// <summary>
/// Abilitazione restart (da opt par...)
/// </summary>
protected bool enableMtcRestart = false;
/// <summary>
/// Secondi standard x veto check status e log
/// </summary>
protected int vetoSeconds = 5;
@@ -78,6 +86,12 @@ namespace IOB_WIN
{
bool.TryParse(getOptPar("ENABLE_DATA_FILTER"), out enableDataFilter);
}
// gestione restart MTC client...
if (!string.IsNullOrEmpty(getOptPar("ENABLE_MTC_RESTART")))
{
bool.TryParse(getOptPar("ENABLE_MTC_RESTART"), out enableMtcRestart);
}
// init datetime counters
lastPzCountSend = DateTime.Now;
lastWarnODL = DateTime.Now;
}
@@ -1047,13 +1061,40 @@ namespace IOB_WIN
// se ho run mode != auto --> manual
B_input += (1 << 4);
}
// solo se non ho veto check
DateTime adesso = DateTime.Now;
int vFactor = 1;
// controllo SE HO dati per fare verifiche...
if (string.IsNullOrEmpty(currRun) || string.IsNullOrEmpty(currExe) || string.IsNullOrEmpty(currUnOpStatus))
{
// se ho parametro x gestione reset...
if (enableMtcRestart)
{
// controllo se ho ricevuto il current da OLTRE 1 minuto...
if (lastCurrent.AddMinutes(1) < adesso)
{
// stop...
lgInfo("Fermato MTC_ref per mancanza dati current");
MTC_ref.Stop();
Thread.Sleep(2000);
// restart
lgInfo("Riavviato MTC_ref per mancanza dati current");
MTC_ref.Start();
}
}
}
else
{
vFactor = 2;
}
// solo se non ho veto check
if (vetoCheckStatus < adesso)
{
lgInfo($"Stato variabili: currRun: {currRun} | currExe: {currExe} | currUnOpStatus: {currUnOpStatus}");
// imposto veto per vetoSeconds...
vetoCheckStatus = adesso.AddSeconds(vetoSeconds);
vetoCheckStatus = adesso.AddSeconds(vetoSeconds * vFactor);
}
#if false
Vendored
+1 -1
View File
@@ -16,7 +16,7 @@ pipeline {
/* calcolo numero versione... diverso x branch MASTER/DEVELOP */
script {
withEnv(['NEXT_BUILD_NUMBER=567']) {
withEnv(['NEXT_BUILD_NUMBER=568']) {
// env.versionNumber = VersionNumber(versionNumberString : '2.6.${BUILD_DATE_FORMATTED, "yyMM"}.${BUILDS_ALL_TIME}', projectStartDate : '2006-01-01', skipFailedBuilds: true)
env.versionNumber = VersionNumber(versionNumberString : '2.6.${BUILD_DATE_FORMATTED, "yyMM"}.${BUILDS_ALL_TIME}', projectStartDate : '2006-01-01', skipFailedBuilds: true, overrideBuildsAllTime: '${NEXT_BUILD_NUMBER}')
env.APP_NAME = 'MAPO-IOB-WIN'