Why not a dedicated phone? A small app like
https://github.com/mendhak/gpslogger and use it in airplane mode. Add a prepaid SIM card so that you can use it as a backup in case of emergency.
That's basically what I'm doing to record my bike rides, with the exception that I leave the display and mobile internet on, since I use it as my bike computer. In my case it lasts around 3 hours, but the screen is at max brightness and there's a continuous websocket connection to my server, GPS is recorded in realtime, accelerometer and magnetic field multiple times a second.
So I guess that if I'd only record GPS once a minute with the screen off and no mobile connection that battery would last for more than a day.
You could also use it as a camera.
Plus, when you get home, you connect it to wifi and let it upload the data to your server.
I mean a cheap phone with a big battery.