Someone already linked to journalctl, but if you just quickly want to look, the command journalctl and the flag —since <your time here> will get you going.
Journalctls output can be piped, so if you know what you’re looking for you can grep it easily.
So go ahead and take a look at your journalctl output. The left hand side should be timestamps, so you can immediately figure out if it’s starting a million years in the past or sometime you know you had the problem.
If it is a million years in the past, use the —since flag and specify the time you want to start at as enumerated in the manual file (man journalctl).
Once you’re looking at the logs in journalctl from a day you know the problem happened, go ahead and use arrow keys and pgup/pgdn to find a reboot. You’ll know when you find a reboot because it’ll look different. The messages will be about figuring out what hardware is attached and changing runlevels and whatnot.
Once you found where the reboot is, go backwards to find something weird happening in the logs.
E: By default the parser (program used to handle text) of journalctls output is “less”. If you want to get out of it, press “q”, and if you want to know more “man less”.