@@ -52,7 +52,12 @@ class Logger
5252 /**
5353 * @var int
5454 */
55- private int $ permissions ;
55+ private int $ filePermissions ;
56+
57+ /**
58+ * @var int
59+ */
60+ private int $ directoryPermissions ;
5661
5762 /**
5863 * @var string
@@ -64,7 +69,8 @@ public function __construct()
6469 $ this ->clearLevel = false ;
6570 $ this ->setWorkDirectory ('. ' . DIRECTORY_SEPARATOR . 'logs ' );
6671 $ this ->setLevel ('runtime ' );
67- $ this ->setPermissions (0755 );
72+ $ this ->setFilePermissions (0755 );
73+ $ this ->setDirectoryPermissions (0664 );
6874 $ this ->setItemKey (null );
6975 $ this ->setItemsLimit (1000 );
7076 $ this ->setTimeZone ('UTC ' );
@@ -207,12 +213,28 @@ public function setItemsLimit(int $itemsLimit): Logger
207213 *
208214 * @return Logger
209215 *
210- * @example setLogFilePermissions(0755)
211- * @example setLogFilePermissions(644)
216+ * @example setFilePermissions(0755)
217+ * @example setFilePermissions(664)
218+ */
219+ public function setFilePermissions (int $ rights ): Logger
220+ {
221+ $ this ->filePermissions = $ rights ;
222+ return $ this ;
223+ }
224+
225+ /**
226+ * Sets access rights to the directory logging.
227+ *
228+ * @param int $rights
229+ *
230+ * @return Logger
231+ *
232+ * @example setFilePermissions(0755)
233+ * @example setFilePermissions(664)
212234 */
213- public function setPermissions (int $ rights ): Logger
235+ public function setDirectoryPermissions (int $ rights ): Logger
214236 {
215- $ this ->permissions = $ rights ;
237+ $ this ->directoryPermissions = $ rights ;
216238 return $ this ;
217239 }
218240
@@ -337,7 +359,7 @@ public function custom($data)
337359 $ fileLog = $ directoryLog . DIRECTORY_SEPARATOR . $ fileName . '.log ' ;
338360
339361 if (!file_exists ($ directoryLog )) {
340- mkdir ($ directoryLog , 0644 , true );
362+ mkdir ($ directoryLog , $ this -> directoryPermissions , true );
341363 }
342364
343365 if ($ this ->clearLevel ) {
@@ -366,7 +388,7 @@ public function custom($data)
366388 ], $ above ), JSON_PRETTY_PRINT | JSON_UNESCAPED_UNICODE | JSON_UNESCAPED_SLASHES )
367389 );
368390
369- chmod ($ fileLog , $ this ->permissions );
391+ chmod ($ fileLog , $ this ->filePermissions );
370392 }
371393
372394 /**
0 commit comments