/** * Progresses the extra data and adds some aditional informations * * @param mixed $extraData * * @return array */ protected function progressExtraData($extraData) { // force extra_data to be an array! if (!is_array($extraData)) { $extraData = array('extra' => $extraData); } // add userdata \tx_rnbase::load('tx_rnbase_util_TYPO3'); $extraData['__feuser'] = \tx_rnbase_util_TYPO3::getFEUserUID(); $extraData['__beuser'] = \tx_rnbase_util_TYPO3::getBEUserUID(); // add trace to extradata $extraData['__trace'] = $this->getBacktrace(); return $extraData; }
protected static function getErrorMailHtml($e, $actionName) { $htmlPart = '<strong>This is an automatic email from TYPO3. Don\'t answer!</strong>'; $htmlPart .= '<div><strong>UNCAUGHT EXCEPTION FOR VIEW: ' . $actionName . '</strong></div>'; $htmlPart .= '<p><strong>Message:</strong><br />' . $e->getMessage() . '</p>'; $htmlPart .= '<p><strong>Stacktrace:</strong><pre>' . $e->__toString() . '</pre></p>'; $htmlPart .= '<p><strong>SITE_URL</strong><br />' . tx_rnbase_util_Misc::getIndpEnv('TYPO3_SITE_URL') . '</p>'; $get = self::removePasswordParams($_GET); if (count($get)) { $htmlPart .= '<p><strong>_GET</strong><br />' . var_export($get, TRUE) . '</p>'; } $post = self::removePasswordParams($_POST); if (count($post)) { $htmlPart .= '<p><strong>_POST</strong><br />' . var_export($post, TRUE) . '</p>'; } $cookie = self::removePasswordParams($_COOKIE); if (count($cookie)) { $htmlPart .= '<p><strong>_COOKIE</strong><br />' . var_export($cookie, TRUE) . '</p>'; } $htmlPart .= '<p><strong>_SERVER</strong><br />' . var_export(self::removePasswordParams($_SERVER), TRUE) . '</p>'; if ($e instanceof tx_rnbase_util_Exception) { $additional = $e->getAdditional(); if ($additional) { $htmlPart .= '<p><strong>Additional Data:</strong><br />' . strval($additional) . '</p>'; } } tx_rnbase::load('tx_rnbase_util_TYPO3'); $htmlPart .= '<p><strong>BE_USER:</strong> ' . tx_rnbase_util_TYPO3::getBEUserUID() . '</p>'; $htmlPart .= '<p><strong>FE_USER:</strong> ' . tx_rnbase_util_TYPO3::getFEUserUID() . '</p>'; return $htmlPart; }
/** * Do the magic and publish all new messages thu the transport. * * @return bool Returns TRUE on successful execution, FALSE on error */ public function execute() { $failures = $successes = array(); $transport = $this->getTransport(); // initialize the transport $transport->initialize($this->getOptions()); /* @var $message \DMK\Mklog\Domain\Model\DevlogEntryModel */ foreach ($this->findMessages() as $message) { try { $transport->publish($message); // mark entry as send for current transport $this->markAsTransported($message); $successes[$message->getUid()] = ''; } catch (\Exception $e) { $failures[$message->getUid()] = $e->getMessage(); } } // shutdown the transport $transport->shutdown(); \tx_rnbase::load('tx_rnbase_util_Logger'); $success = empty($failures); $msg = sprintf('WatchDog %1$s has %2$d messages send and %3$d failures.', $this->getTransportId(), count($successes), count($failures)); \tx_rnbase_util_Logger::devLog($msg, 'mklog', $success ? \tx_rnbase_util_Logger::LOGLEVEL_DEBUG : \tx_rnbase_util_Logger::LOGLEVEL_WARN, array('transport' => $this->getTransportId(), 'successes' => $successes, 'failures' => $failures)); // create a flash message for the beuser \tx_rnbase::load('tx_rnbase_util_TYPO3'); if (\tx_rnbase_util_TYPO3::getBEUserUID()) { \tx_rnbase::load('tx_rnbase_util_Misc'); \tx_rnbase_util_Misc::addFlashMessage($msg, 'MK LOGGER WatchDog', $success ? 0 : 2, false); } return $success; }