Troubleshooting log messages not appearing
If you're expecting Apache to be logging output, and it isn't, there's a few likely culprits.
Incorrect file permissions
If your log files don't have the proper write permissions, Apache can't write anything to them. Usually this isn't something you resolve by changing the file permissions, but by changing the file owner (it makes no sense for a user other than the one Apache runs as to own the log files).
If you deleted a log file and manually replaced it with some new file, and you were e.g. logged in as root, the Apache process (which normally runs as daemon) will not have write privileges to it, so it won't log anything.
Invalid file handles
If you have logrotate or some other configuration in place for rotating your log files, check the configuration to make sure it is correct for Apache.
If the log rotation moves the existing log file and creates a new one, Apache will continue writing to the old log's file handle, and will not be aware of the new log file (and if your old log file is zipped or renamed, Apache will not write anything until you restart it).
To solve this, configure your log rotation to copy the existing log file to a new file, then truncate the existing file. This way, it still rotates the log file for all practical purposes, but the file handle isn't changed so Apache continues writing to it as normal.
In logrotate, the copytruncate command does this.