Is it a good practice to put an exception handler in every method?
Don't do that.

If you log your exceptions at every function, you'll print the same exception over and over and over again. Its only useful the first time, after that its a pain.

It will also make your code much harder to read and write.

You should log the exception when you would otherwise lose it. At some point, your exception has to be caught and not rethrown. This may happen in the default exception handler. That's where you should log. Don't log exceptions that you just rethrow. Trust whoever catches them to log them.