Tiberium Posted June 12 Posted June 12 The module can not be used, when the directory logs/tracy is not existing. An update of the module is also not triggering the creation of that folder. It would be nice, when the module can do it "by itself" when it is getting called in the admin. I'm working often for transfer between testing and live server with Duplicator where I exclude the (old) logs (also is the backup strategy). What is for all other logs not a problem, except the tracy log folder.
Gideon So Posted June 12 Posted June 12 Hi @Tiberium Just a guess. Did you check the permission of the folder to see if the web server has the right to create folders / files within the logs folder? Gideon
Tiberium Posted June 12 Author Posted June 12 @Gideon So Yes, also ProcessWire can also re-create deleted logs in the affected projects.
adrian Posted June 12 Posted June 12 Hi @Tiberium - Tracy definitely tries to create the directory: https://github.com/adrianbj/TracyDebugger/blob/98d9d3b8c3eb141f25d75ec1a4ec62d12ad42527/TracyDebugger.module.php#L995 everytime it is loaded, so there must be some permission issue.
Tiberium Posted June 13 Author Posted June 13 @adrianThank you for replying. The site/assets/logs/ Folder has 755. The same as in site/modules and there ProcessWire can create folders (module installations). Also, all other folder creations are also without problems, like when I am deleting the assets/backups/database folder and then trigger the Cronjob Database Backup module, it re-creates the folder without problems (and put the backup inside). (Folder Permissions: site/assets/logs | site/modules | site/assets/backups) That is the full error message: DEBUG MODUS ABLAUFVERFOLGUNG ($config->debug == true): #0 /html/website/site/assets/cache/FileCompiler/site/modules/TracyDebugger/panels/TracyLogsPanel.php(224): DirectoryIterator->__construct('...') #1 /html/website/site/assets/cache/FileCompiler/site/modules/TracyDebugger/TracyDebugger.module.php(4387): TracyLogsPanel->getLogs() #2 /html/website/wire/core/ModulesConfigs.php(588): TracyDebugger->getModuleConfigInputfields(Array) #3 /html/website/wire/core/Modules.php(1744): ProcessWire\ModulesConfigs->getModuleConfigInputfields('...', Object(ProcessWire\InputfieldForm)) #4 /html/website/wire/core/Wire.php(419): ProcessWire\Modules->___getModuleConfigInputfields('...', Object(ProcessWire\InputfieldForm)) #5 /html/website/wire/core/WireHooks.php(998): ProcessWire\Wire->_callMethod('...', Array) #6 /html/website/wire/core/Wire.php(484): ProcessWire\WireHooks->runHooks(Object(ProcessWire\Modules), '...', Array) #7 /html/website/wire/modules/Process/ProcessModule/ProcessModule.module(1705): ProcessWire\Wire->__call('...', Array) #8 /html/website/wire/modules/Process/ProcessModule/ProcessModule.module(1435): ProcessWire\ProcessModule->renderEdit('...', Array) #9 /html/website/wire/core/Wire.php(413): ProcessWire\ProcessModule->___executeEdit() #10 /html/website/wire/core/WireHooks.php(998): ProcessWire\Wire->_callMethod('...', Array) #11 /html/website/wire/core/Wire.php(484): ProcessWire\WireHooks->runHooks(Object(ProcessWire\ProcessModule), '...', Array) #12 /html/website/wire/core/ProcessController.php(361): ProcessWire\Wire->__call('...', Array) #13 /html/website/wire/core/Wire.php(413): ProcessWire\ProcessController->___execute() #14 /html/website/wire/core/WireHooks.php(998): ProcessWire\Wire->_callMethod('...', Array) #15 /html/website/wire/core/Wire.php(484): ProcessWire\WireHooks->runHooks(Object(ProcessWire\ProcessController), '...', Array) #16 /html/website/wire/core/admin.php(174): ProcessWire\Wire->__call('...', Array) #17 /html/website/site/templates/admin.php(18): require('...') #18 /html/website/wire/core/TemplateFile.php(328): require('...') #19 /html/website/wire/core/Wire.php(413): ProcessWire\TemplateFile->___render() #20 /html/website/wire/core/WireHooks.php(998): ProcessWire\Wire->_callMethod('...', Array) #21 /html/website/wire/core/Wire.php(484): ProcessWire\WireHooks->runHooks(Object(ProcessWire\TemplateFile), '...', Array) #22 /html/website/wire/modules/PageRender.module(581): ProcessWire\Wire->__call('...', Array) #23 /html/website/wire/core/Wire.php(416): ProcessWire\PageRender->___renderPage(Object(ProcessWire\HookEvent)) #24 /html/website/wire/core/WireHooks.php(998): ProcessWire\Wire->_callMethod('...', Array) #25 /html/website/wire/core/Wire.php(484): ProcessWire\WireHooks->runHooks(Object(ProcessWire\PageRender), '...', Array) #26 /html/website/wire/core/WireHooks.php(1099): ProcessWire\Wire->__call('...', Array) #27 /html/website/wire/core/Wire.php(484): ProcessWire\WireHooks->runHooks(Object(ProcessWire\Page), '...', Array) #28 /html/website/wire/modules/Process/ProcessPageView.module(193): ProcessWire\Wire->__call('...', Array) #29 /html/website/wire/modules/Process/ProcessPageView.module(114): ProcessWire\ProcessPageView->renderPage(Object(ProcessWire\Page), Object(ProcessWire\PagesRequest)) #30 /html/website/wire/core/Wire.php(416): ProcessWire\ProcessPageView->___execute(true) #31 /html/website/wire/core/WireHooks.php(998): ProcessWire\Wire->_callMethod('...', Array) #32 /html/website/wire/core/Wire.php(484): ProcessWire\WireHooks->runHooks(Object(ProcessWire\ProcessPageView), '...', Array) #33 /html/website/index.php(55): ProcessWire\Wire->__call('...', Array) #34 {main}
adrian Posted June 13 Posted June 13 Thanks @Tiberium I can reproduce if I try to load Tracy's settings page when it's not enabled and the logs file doesn't exist, but this is not something that will ever happen with a regular usage which I suppose is why no-one has ever reported it. Anyway, new version should sort things out for you. 1
Tiberium Posted June 13 Author Posted June 13 Ahh that makes sense. I have like a "boilerplate" installation, what we use to spin up a remote (test) server - realized via Duplicator. Tracy is there (not active in his own switch) in case I need to debug something or make a fast file change. But get's removed afterward.
adrian Posted June 13 Posted June 13 Having Tracy run on production servers in production mode can be a very useful tool - logging exceptions with Tracy's full stack trace saved and notification of errors via email and slack.
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now