My goal is to get a simple "# of requests per day" value against a Route 53 hosted zone.
I see no straightforward way to do this.
I have created the query logging as explained here: https://docs.aws.amazon.com/Route53/latest/DeveloperGuide/query-logs.html
However this is extensive logging and it's split per global edge server. All I want is "domain example.com was queried 40,000 times in the last 24 hours" and similar metrics.
Is this possible? The logging seems overkill and I'll have to do quite a bit of parsing through all the subdirs to get that type of sum.
Each request to Route53 creates its own log entry, so rather than parsing you should be able to count the log entries in a given log group over time with an empty metric filter. Amazon docs explain how to do that here. You can have each hosted zone log to its own log group (to count them separately), or can have some hosted zones log to the same log group (to count them together or to split using metric filters).
In console:
You can then pull up the data in CloudWatch Metrics and graph it with whatever interval and statistic you like. In your case, "Sum" with "1 day" intervals should get you a line graph of the total DNS requests per day.
There is no quick & easy solution here. Short answer, use the billing dashboard for historical metrics.
The billing dashboard is the only way to get values like this right now unless you want to write a tool to parse and analyze CloudWatch logs using the query-logs exporter, which is not a straightforward solution as the question is asking for.