For dungeon crawling, I use a tally counter and click off the rounds and turns they spend, noting the count where they light torches or spells are cast etc.
Random encounters in the dungeon occur based on the appropriate frequency of the encounter for the dungeon.
For date keeping, I have a...