Is it ethical to keep logs of a relay (whether it's an entry, middle or exit)? Or should I not even keep logs to begin with?
Ethics are all just opinions. I personally do not keep logs, and the general consensus is that you should reduce logging to as much as possible. From Tor's website:
Audit your server's logging configuration and reduce the amount of information logged as much as possible. Set your log rotation software to delete logs after as short a time as you can manage.
Remember, you can recover deleted files as long as the space has not been overwritten. With mildly expensive computer forensics, you can recover even multiple pass overwrites.
The best policy is to keep no logs. If you must keep logs, consider rotating them and purging the old logs with an overwrite scheme such as Peter Gutmann's 35 pass overwrite using special patterns.
EFF's best practices for online service providers https://www.eff.org/files/20040819_OSPBestPractices.pdf.