fix(heartbeat): add diagnostic logging to all bail-out points
Generic: Repo Health / Scripts governance (push) Blocked by required conditions
Generic: Repo Health / Repository health (push) Blocked by required conditions
Generic: Repo Health / Report Issues (push) Blocked by required conditions
Generic: Project CI / Tests (pull_request) Blocked by required conditions
Joomla: Extension CI / Tests (PHP 8.2) (pull_request) Blocked by required conditions
Joomla: Extension CI / Tests (PHP 8.3) (pull_request) Blocked by required conditions
Joomla: Extension CI / PHPStan Analysis (pull_request) Blocked by required conditions
Joomla: Extension CI / Build RC Pre-Release (pull_request) Blocked by required conditions
Generic: Repo Health / Site Health (push) Has been skipped
Universal: PR Check / Build RC Package (pull_request) Blocked by required conditions
Universal: PR Check / Report Issues (pull_request) Blocked by required conditions
Generic: Repo Health / Scripts governance (pull_request) Blocked by required conditions
Generic: Repo Health / Repository health (pull_request) Blocked by required conditions
Generic: Repo Health / Report Issues (pull_request) Blocked by required conditions
Generic: Repo Health / Access control (push) Successful in 1s
Universal: PR Check / Branch Policy (pull_request) Successful in 1s
Generic: Repo Health / Access control (pull_request) Successful in 2s
Generic: Repo Health / Site Health (pull_request) Has been skipped
Joomla: Extension CI / Release Readiness Check (pull_request) Failing after 6s
Universal: Secret Scanning / Gitleaks Secret Scan (pull_request) Successful in 6s
Universal: PR Check / Validate PR (pull_request) Failing after 5s
Universal: Auto Version Bump / Version Bump (push) Failing after 10s
Universal: Pre-Release / Build Pre-Release (${{ inputs.stability || 'development' }}) (pull_request_target) Failing after 9s
Generic: Project CI / Lint & Validate (pull_request) Successful in 27s
Joomla: Extension CI / Lint & Validate (pull_request) Failing after 29s

Log reason when sendHeartbeat() exits early: missing params, empty
health token, or unconfigured base URL. Helps diagnose why heartbeat
doesn't reach MokoSuiteClientHQ after install/update.
This commit is contained in:
Jonathan Miller
2026-06-20 11:54:24 -05:00
parent f8c70f2bef
commit fb52d3ed53
+16 -1
View File
@@ -836,11 +836,22 @@ class Pkg_MokosuiteclientInstallerScript
->where($db->quoteName('element') . ' = ' . $db->quote('mokosuiteclient'))
->where($db->quoteName('type') . ' = ' . $db->quote('plugin'))
->where($db->quoteName('folder') . ' = ' . $db->quote('system'));
$coreParams = json_decode((string) $db->setQuery($query)->loadResult());
$rawParams = (string) $db->setQuery($query)->loadResult();
$coreParams = json_decode($rawParams);
if (!$coreParams)
{
Log::add('Heartbeat skipped: core plugin params empty or not found', Log::WARNING, 'mokosuiteclient');
return;
}
$healthToken = $coreParams->health_api_token ?? '';
if (empty($healthToken))
{
Log::add('Heartbeat skipped: health_api_token not configured', Log::INFO, 'mokosuiteclient');
return;
}
@@ -873,9 +884,13 @@ class Pkg_MokosuiteclientInstallerScript
if (empty($baseUrl))
{
Log::add('Heartbeat skipped: monitor_base_url not configured and manifest fallback failed', Log::WARNING, 'mokosuiteclient');
return;
}
Log::add('Heartbeat sending to: ' . $baseUrl, Log::INFO, 'mokosuiteclient');
$siteUrl = rtrim(\Joomla\CMS\Uri\Uri::root(), '/');
$domain = parse_url($siteUrl, PHP_URL_HOST) ?: '';
$timestamp = time();