I've had good success with Loctite 401 for bonding PLA. Still it looks like there is a new adhesive that might take the cake for bonding PLA called 3DGloop. Here it is tested against cyanoacrylate and epoxy and the 3DGloop won handily. In fact the PLA failed before the adhesive failed:
Here's where to but it:
They sell a version for abs as well. I know solvent bonding abs with acetone works well too, but I'm not sure which is easier to work with and which dries fastest.
It's interesting (and maybe a stretch) that they say 3DGloop for abs can be used to keep abs parts attached to the print bed without even heating the bed and you can still pop the part off when done; although they do recommend a heated bed for best results.
They also say 3DGloop for ABS can be used to smooth parts by spraying it on. I tried an acetone vapor bath to smooth my parts and got mixed results in terms of quality so their spray version sounds interesting especially if it's really as easy as just spraying it on and the fumes are less toxic than acetone...I have not verified either of these questions yet.
I have not tried 3DGloop, but I'd be interested to hear your results if you do.
I don't think they have a PETG version yet.