$identifier = $argv[4]; $tool = $argv[5]; $message = $argv[6]; if (!file_exists($xUnitFile)) { die("\n File not found: " . $xUnitFile . "\n\n"); } // XML PROCESSING $doc = new DOMDocument(); $doc->load($xUnitFile); $xpath = new DOMXPath($doc); $query = '//testsuites/testsuite/testcase/failure'; $failures = $xpath->query($query); $incidents = array(); $message .= "<ul>"; $errorOccured = false; foreach ($failures as $failure) { $message .= '<li>Type: ' . $failure->getAttribute('type') . ' - ' . $failure->nodeValue . '</li>'; $errorOccured = true; } $message .= "</ul>"; // PREPARE REPORT if (!$errorOccured) { $status = \Koalamon\Client\Reporter\Event::STATUS_SUCCESS; $message = ''; } else { $status = \Koalamon\Client\Reporter\Event::STATUS_FAILURE; } $reporter = new \Koalamon\Client\Reporter\Reporter('', $projectApiKey, new GuzzleHttp\Client()); $event = new \Koalamon\Client\Reporter\Event($identifier, $system, $status, $tool, $message, count($failures)); $reporter->sendEvent($event); die("\n Incidents send to koalamon.\n\n");
private function doReport($system, $status, $message, $identifier) { $reporter = new \Koalamon\Client\Reporter\Reporter('', $this->apiKey, new Client(), $this->server); $event = new Event($identifier, $system, $status, 'missingRequest', $message); $reporter->sendEvent($event); }
if ($responseSize > $maxFileSize * 1024) { echo "\nBig file found: " . (string) $dependency . "\n"; $bigFileNames[] = ['file' => $dependency, 'size' => $responseSize]; $bigFiles++; } } } catch (\Exception $e) { } } if ($bigFiles > 0) { $status = \Koalamon\Client\Reporter\Event::STATUS_FAILURE; $message = "Too many big files (>" . $maxFileSize . " KB) on " . $url . " found. <ul>"; foreach ($bigFileNames as $bigFileName) { $message .= "<li>File: " . $bigFileName['file'] . ", size: " . round($bigFileName['size'] / 1024) . " KB</li>"; } $message .= "</ul>"; } else { $status = \Koalamon\Client\Reporter\Event::STATUS_SUCCESS; $message = "No big files (>" . $maxFileSize . " KB) found. Checked " . count($dependencies) . " files."; } $bigFileEvent = new \Koalamon\Client\Reporter\Event('SiteInfo_BigFiles_' . $url, $system, $status, 'SiteInfoBigFile', $message, $bigFiles, '', $component_id); $koalamonReporter->sendEvent($bigFileEvent); $totalSizeInMb = round($totalSize / 1024 / 1024, 2); if ($totalSizeInMb > $maxPageSize) { $status = \Koalamon\Client\Reporter\Event::STATUS_FAILURE; } else { $status = \Koalamon\Client\Reporter\Event::STATUS_SUCCESS; } $message = "Total size of the site " . $url . " is " . $totalSizeInMb . "MB."; $bigFileEvent = new \Koalamon\Client\Reporter\Event('SiteInfo_FileSize_' . $url, $system, $status, 'SiteInfoFileSize', $message, $totalSizeInMb, '', $component_id); $koalamonReporter->sendEvent($bigFileEvent);