Difference between revisions of "Troubleshooting FAQ"

From Lorekeeper Wiki
Jump to navigation Jump to search
(Added section for setup issues and started giving some more detail to how to debug 500 errors)
Tag: 2017 source edit
Line 34: Line 34:
 
  Trying to get property 'name' of non-object (View: \site\resources\views\[...]\create_edit_submission.blade.php)
 
  Trying to get property 'name' of non-object (View: \site\resources\views\[...]\create_edit_submission.blade.php)
 
<br />
 
<br />
 +
<code>create_edit_submission.blade.php</code> is the file where something is going wrong, and <code>name</code> is the variable, or function where things aren't working as expected.
 +
 +
While it's good to then go double check that template file to see if anything looks out of the norm, often template errors are occurring because of an issue deeper in the code. [[Tutorial: Adding Fields to Users/Characters/Etc]] has a great explanation about how the different parts of Lorekeeper hand-off to each other to explain how you can start to trace issues from a template to their cause.
 +
 
==Changes not showing up?==
 
==Changes not showing up?==
 
===Were the changes in the .env, config files, or route files?===
 
===Were the changes in the .env, config files, or route files?===

Revision as of 13:02, 15 July 2022

Lorekeeper 500 Errors - How to find and read your logs

500 errors are some of the most common errors you'll encounter on your site. If you are in your production server, they'll show up with very little information to inform you what has happened.

There are two main ways to get more information

  1. Re-produce the error on your local environment, which should have error verbosity turned on. (Don't have a local? Go make one)
  2. Find the error in your log files

Finding the error in your log files can be a little confusing if you've never done it before, so we'll walk through that here.

  1. Navigate in your file manager to /storage/logs/ from your root LK folder
  2. Find the file named with today's date
  3. Open the file and scroll all the way to the bottom

At that point you should see a bunch of lines that look something like this ([...] added to represent bits that were removed for brevity):

#47 /[...]/laravel/framework/[...]/Pipeline.php(167): [...]\\PreventRequestsDuringMaintenance->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#48 /[...]/laravel/framework/[...]/Pipeline.php(103): [...]\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#49 /[...]/laravel/framework[...]/Kernel.php(141): [...]\\Pipeline->then(Object(Closure))

Notice the lines are numbered! What you'll want to do is carefully scroll up until you see those numbers count down to #0. We don't want to go past this set of lines and into the next error up, so it's important to not scroll through them too quickly or it'll be easy to miss.

When you get to #0 it'll look like this:

[stacktrace]
#0 [...]

And will have one additional line above that. That's your error message. It'll have a timestamp in front of it, and that's what you'll want to pay attention to, to try to solve the error, or copy into the discord so that others can help you parse what it means.

How to Read a 500 error

Most 500 errors will give you two important pieces of information - a variable name, and a file name.

An example of a 500 error:

Trying to get property 'name' of non-object (View: \site\resources\views\[...]\create_edit_submission.blade.php)


create_edit_submission.blade.php is the file where something is going wrong, and name is the variable, or function where things aren't working as expected.

While it's good to then go double check that template file to see if anything looks out of the norm, often template errors are occurring because of an issue deeper in the code. Tutorial: Adding Fields to Users/Characters/Etc has a great explanation about how the different parts of Lorekeeper hand-off to each other to explain how you can start to trace issues from a template to their cause.

Changes not showing up?

Were the changes in the .env, config files, or route files?

Try using php artisan optimize. If the site stops work at all, run it a second time.


Initial Setup Common Issues

Root composer.json requires php ^7.4 but your php version (8.1.6) does not satisfy that requirement

You probably downloaded the wrong version of XAMPP!

Go to XAMPP's Downloads page and make sure you grab the version that matches the php version in your composer.json.