I want to log some infos from inside my VoltProcedures but there is no logger in the VoltProcedure abstract class. I found this question explaining that the best way is to insert data into that table. The answer is from 2015 so I wondered if there is another way to do so? Is logging through log4j still not recommended?
Thanks :)
I work at VoltDB and wrote the answer you referred to. It's ok to use Log4J inside a stored procedure, but it should be used carefully. We weren't recommending it at the time because we saw cases where logging from procedures affected performance. We still don't recommend keeping very much log statements enabled in production, but for development or for providing more detail as part of (hopefully rare) exception handling it can be very useful.
We now have a HOWTO that describes the recommended way to use Log4J within stored procedures. It's essentially old school Log4J 1.0 techniques, such as putting the logger calls within an if() block that will be optimized if the logging level isn't enabled.