A simple statistics view with page hits for this application.
The dynamic action on page 0 handles the page hit logging.
For the package below, you will need this: grant execute on dbms_crypto to tedstruik;
All the hashing of IP addresses is needed to comply with the AVG/GDPR laws. The MAC key (ted_secret_stuff.c_salt) is a secret random string, which I put in another package for obvious reasons.
The IPSTACK_JSON column is for future use, it might be useful to get some info on the IP (before we hash it).
Note: For a simpler method of logging page visits, you can also use the method described by Martin Giffy D'Souza, which is discussed on my Apex -> General -> Logs
page. That would be a bit easier to implement than this one, but also a bit less flexible.