]> git.mxchange.org Git - friendica.git/blobdiff - src/Util/Logger/WorkerLogger.php
Merge pull request #8271 from MrPetovan/bug/8229-frio-mobile-back-to-top
[friendica.git] / src / Util / Logger / WorkerLogger.php
index a9295834d9b218951a3583c3aa3921747158365e..fb63ce1024f9b86c911bc9b25a1cf81bec99337f 100644 (file)
@@ -1,7 +1,27 @@
 <?php
+/**
+ * @copyright Copyright (C) 2020, Friendica
+ *
+ * @license GNU AGPL version 3 or any later version
+ *
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Affero General Public License as
+ * published by the Free Software Foundation, either version 3 of the
+ * License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU Affero General Public License for more details.
+ *
+ * You should have received a copy of the GNU Affero General Public License
+ * along with this program.  If not, see <https://www.gnu.org/licenses/>.
+ *
+ */
 
 namespace Friendica\Util\Logger;
 
+use Friendica\Util\Strings;
 use Psr\Log\LoggerInterface;
 
 /**
@@ -30,33 +50,21 @@ class WorkerLogger implements LoggerInterface
         * @param string $functionName The current function name of the worker
         * @param int $idLength The length of the generated worker ID
         */
-       public function __construct(LoggerInterface $logger, $functionName, $idLength = 7)
+       public function __construct(LoggerInterface $logger, $functionName = '', $idLength = 7)
        {
                $this->logger = $logger;
                $this->functionName = $functionName;
-               $this->workerId = $this->generateWorkerId($idLength);
+               $this->workerId = Strings::getRandomHex($idLength);
        }
 
        /**
-        * Generates an ID
-        *
-        * @param int $length
+        * Sets the function name for additional logging
         *
-        * @return string
+        * @param string $functionName
         */
-       private function generateWorkerId($length)
+       public function setFunctionName(string $functionName)
        {
-               if ($length <= 0) {
-                       $this->logger->alert('id length must be greater than 0.');
-                       return '';
-               }
-
-               try {
-                       return substr(bin2hex(random_bytes(ceil($length / 2))), 0, $length);
-               } catch (\Exception $exception) {
-                       $this->logger->alert('random_bytes threw an error', ['exception' => $exception]);
-                       return '';
-               }
+               $this->functionName = $functionName;
        }
 
        /**