Choose your integration
Log Hero has no tracking script — it cannot have one, because the traffic it is after never runs JavaScript. It reads the requests your infrastructure already answers, which means something in that infrastructure has to hand them over. That something is the integration.
You need exactly one. Every integration produces the same report; they differ in how much work they are to install and in which requests they can see at all. That second point is what this page is about, because a request your integration never sees is a bot visit that silently does not exist in your data.
The rule
Section titled “The rule”Log as close to the visitor as you can.
A request travels from the bot to your CDN, from your CDN to your web server, and from your web server into your application. At every step some requests stop and turn around. A CDN answers from cache and never asks your server. A web server sends a PNG straight off disk and never starts PHP. Whatever you log at, everything that stopped before it is invisible.
Decide in three questions
Section titled “Decide in three questions”1. Is there a CDN in front of your site?
If yes, and it is Cloudflare on an Enterprise plan, use Cloudflare Logpush. If it is Amazon CloudFront, Azure Front Door or Fastly, use Amazon CloudFront, Azure Front Door or Fastly. These see everything the CDN answers, including the large share it answers from cache without ever contacting you.
If the CDN is Cloudflare on Free, Pro or Business, Logpush is not available to you. Carry on to question 2 and log at the origin instead, accepting that cached hits will be missing.
2. Is the site WordPress?
Then use the WordPress plugin. It is five minutes, it needs no server access, and it is the same client as the PHP SDK with the configuration already done.
3. What answers the requests?
- A PHP application that is not WordPress: the PHP SDK.
- Apache, and you want static files and 404s too: the Apache module. Read that page first, it is not self-serve today.
- Something else — nginx, Node, Go, a managed platform: write to support@log-hero.com. Tell us what serves your traffic and we will tell you what is possible.
What each one takes
Section titled “What each one takes”| Integration | Runs at | Requirements | Effort |
|---|---|---|---|
| WordPress | Origin, inside WordPress | WordPress 6.0+, PHP 7.4+ | 5 minutes |
| Cloudflare Logpush | Edge | Cloudflare Enterprise | 15 minutes |
| Apache | Origin, inside the web server | Root, a build toolchain | An hour or more |
| PHP SDK | Origin, inside your application | PHP 7.4+, deploy access | 30 minutes |
| Amazon CloudFront | Edge | An AWS account, CloudFormation in us-east-1 | 10 minutes |
| Fastly | Edge | A Fastly VCL service, a personal API token | 10 minutes |
| Azure Front Door | Edge | A Front Door Standard or Premium profile, an Azure subscription | 15 minutes |
What each one sees
Section titled “What each one sees”| Integration | Cached responses | Static files | Requests blocked by a WAF | Response time means |
|---|---|---|---|---|
| WordPress | No | No | n/a | How long WordPress took |
| Cloudflare Logpush | Yes | Yes | No | Time to first byte at the Cloudflare edge |
| Apache | No | Yes | n/a | How long Apache took |
| PHP SDK | No | No | n/a | How long PHP took |
“Cached responses” means requests your CDN answered without contacting your server. On a well-cached site that is most of the traffic, and crawlers hit cacheable pages more than anyone.
The trade-offs, one by one
Section titled “The trade-offs, one by one”WordPress plugin
Section titled “WordPress plugin”The obvious choice for a WordPress site, and the only integration that needs no access to the server. The cost is that it lives inside WordPress: a page cache plugin, a reverse proxy or a CDN in front of it will answer requests that the plugin then never records. On a heavily cached site the plugin can see a small fraction of real traffic and give you no hint that it is doing so.
Worth knowing before you install: it transmits a record for every request, human visitors included, because bot filtering happens on our side. If that is a problem for you, it is a problem for the PHP SDK and the Apache module too.
Cloudflare Logpush
Section titled “Cloudflare Logpush”The most complete picture available, and no code on your server. Cloudflare
hands over a record of every request it answers, so cached pages, images and
robots.txt are all in there.
Two catches. Logpush is Enterprise-only, which rules it out for most sites. And requests Cloudflare stops before logging — a WAF rule, a rate limit, Bot Fight Mode — never appear, so an aggressive bot-mitigation setup can make it look as though the AI crawlers went away when they were simply blocked.
Apache module
Section titled “Apache module”The only origin-side option that records static files, redirects Apache handled itself, and 404s for paths that never reach an application. For a site whose crawl budget goes on PDFs and images, that difference is the whole point.
It is also the most work: a compile against your exact Apache build, root access, and a restart. Read the Apache page before planning around it — the module is not self-serve today.
PHP SDK
Section titled “PHP SDK”The general answer for a PHP application that is not WordPress. You control where the hook goes and how the buffer is stored, which makes it the right fit for multi-server deployments and read-only filesystems.
It sees exactly what your application sees, and nothing else. Static assets and anything answered by a cache in front of PHP are missing, the same as with the WordPress plugin.
Amazon CloudFront
Section titled “Amazon CloudFront”The same coverage as Logpush, with no plan requirement. You create a CloudFormation stack in your own AWS account, in us-east-1. The stack turns on standard logging for one distribution and forwards it to Log Hero. Your distribution is not changed, but AWS bills you for the stack’s resources.
Fastly
Section titled “Fastly”The same coverage as Logpush, on all Fastly plans, for VCL services only. You paste a personal API token into Log Hero, and Log Hero adds a logging endpoint to your service in a new active version. The connector is in beta. Fastly Compute services are not supported yet.
Azure Front Door
Section titled “Azure Front Door”The same coverage as Logpush, for Front Door Standard and Premium profiles. Azure cannot push these logs to an HTTPS endpoint, so you deploy a template in your own subscription. It creates an Event Hub and a small forwarder function, and adds a diagnostic setting to the profile. Azure bills you for those resources, about 20 to 25 US dollars a month. The connector is in beta.
Can you run two?
Section titled “Can you run two?”Not on the same hostname. Two integrations mean two records for the same request, and your bot counts double.
Running different integrations on different hostnames is fine, and often right: the Logpush job on the domain behind Cloudflare, the WordPress plugin on the blog that is not.
The one case where two sources genuinely help is diagnosis. If your edge integration reports far more hits than an origin one on the same site, the gap is your cache hit rate for bots — useful to know once, not worth logging twice forever.
Still not sure?
Section titled “Still not sure?”Answer these and write to support@log-hero.com: what serves your traffic, whether there is a CDN in front of it, and whether you can deploy code or only install a plugin. That is everything we need to point you at the right page.
Follow the page for your integration, then confirm the data is complete with Verify your setup.
