Add last seen error date to the system status page [MAILPOET-2083]

This commit is contained in:
wxa
2019-05-20 21:00:42 +03:00
committed by M. Shull
parent 594b96c40d
commit 4d45e97ec4
4 changed files with 12 additions and 0 deletions

View File

@ -56,6 +56,10 @@ const CronStatus = (props) => {
key: MailPoet.I18n.t('lastSeenError'), key: MailPoet.I18n.t('lastSeenError'),
value: lastError || MailPoet.I18n.t('none'), value: lastError || MailPoet.I18n.t('none'),
}, },
{
key: MailPoet.I18n.t('lastSeenErrorDate'),
value: status.last_error_date ? MailPoet.Date.full(status.last_error_date * 1000) : MailPoet.I18n.t('unknown'),
},
]} ]}
/> />
</div> </div>

View File

@ -26,6 +26,7 @@ class CronHelper {
'run_started_at' => null, 'run_started_at' => null,
'run_completed_at' => null, 'run_completed_at' => null,
'last_error' => null, 'last_error' => null,
'last_error_date' => null,
]; ];
self::saveDaemon($daemon); self::saveDaemon($daemon);
return $daemon; return $daemon;
@ -44,6 +45,7 @@ class CronHelper {
$daemon = self::getDaemon(); $daemon = self::getDaemon();
if ($daemon) { if ($daemon) {
$daemon['last_error'] = $error; $daemon['last_error'] = $error;
$daemon['last_error_date'] = time();
self::saveDaemon($daemon); self::saveDaemon($daemon);
} }
} }

View File

@ -50,6 +50,7 @@ class CronHelperTest extends \MailPoetTest {
'run_started_at' => null, 'run_started_at' => null,
'run_completed_at' => null, 'run_completed_at' => null,
'last_error' => null, 'last_error' => null,
'last_error_date' => null,
] ]
); );
} }
@ -68,6 +69,7 @@ class CronHelperTest extends \MailPoetTest {
'run_started_at' => null, 'run_started_at' => null,
'run_completed_at' => null, 'run_completed_at' => null,
'last_error' => null, 'last_error' => null,
'last_error_date' => null,
] ]
); );
} }
@ -192,9 +194,11 @@ class CronHelperTest extends \MailPoetTest {
$daemon $daemon
); );
$time = time();
CronHelper::saveDaemonLastError('error'); CronHelper::saveDaemonLastError('error');
$daemon = CronHelper::getDaemon(); $daemon = CronHelper::getDaemon();
expect($daemon['last_error'])->equals('error'); expect($daemon['last_error'])->equals('error');
expect($daemon['last_error_date'])->greaterOrEquals($time);
} }
@ -325,6 +329,7 @@ class CronHelperTest extends \MailPoetTest {
'run_started_at' => null, 'run_started_at' => null,
'run_completed_at' => null, 'run_completed_at' => null,
'last_error' => null, 'last_error' => null,
'last_error_date' => null,
]; ];
} }
} }

View File

@ -44,6 +44,7 @@
'lastRunStarted': _x('Last run started', 'A label in a status table e.g. Last run started: 2018-10-18 18:50'), 'lastRunStarted': _x('Last run started', 'A label in a status table e.g. Last run started: 2018-10-18 18:50'),
'lastRunCompleted': _x('Last run completed', 'A label in a status table e.g. Last run completed: 2018-10-18 18:50'), 'lastRunCompleted': _x('Last run completed', 'A label in a status table e.g. Last run completed: 2018-10-18 18:50'),
'lastSeenError': _x('Last seen error', 'A label in a status table e.g. Last seen error: Process timeout'), 'lastSeenError': _x('Last seen error', 'A label in a status table e.g. Last seen error: Process timeout'),
'lastSeenErrorDate': _x('Last seen error date', 'A label in a status table e.g. Last seen error date: 2018-10-18 18:50'),
'unknown': _x('unknown', 'An unknown state is a status table e.g. Last run started: unknown'), 'unknown': _x('unknown', 'An unknown state is a status table e.g. Last run started: unknown'),
'accessible': _x('Accessible', 'A label in a status table e.g. Accessible: yes'), 'accessible': _x('Accessible', 'A label in a status table e.g. Accessible: yes'),
'status': __('Status'), 'status': __('Status'),