"Three reasons monitoring troubleshooting and updates."
I've got a printer which I *could* attach directly to the GPIO pins of a Raspberry Pi running Octoprint. I don't do this, because it introduces more possible sources of error in the print process, and to be honest, I keep the 3D printer turned off when I'm not using it.
I have to walk over to the printer to make sure the bed is cleaned with IPA or acetone or smeared in glue stick as appropriate and then turn it on to use it. At that point, I might as well set the bed and hotend preheating, and drop in an SD card containing the gcode of the thing I want to print. I like to watch the first layer (or two) printing, because that's when things are most likely to go wrong, and I'm not sure I'd want to do that through a webcam. I tend to print overnight, having kept a vague eye on things for an hour or two before bed time, so for my use case, there is no advantage at all to using Octoprint.
On the other hand, pretty much all the things that can go wrong with a 3D print need to be got right *before* the print starts, but monitoring the print does at least allow you to stop wasting plastic on the occasions you got something wrong, so being able to remotely monitor a print could be useful if you're going to print during the day.