Search Log > report

The core Search module provides a simple list of top search phrases from the watchdog log using the function dblog_top. However, most sites clear watchdog frequently. Search log stores search terms indefinitely and provides more robust reporting.

  • Search log supports all modules which implement hook_search_info(). Modules can be configured to be excluded from logging.
  • Search log supports the search page, search block and theme search forms. By default, logging is performed at form submit before the search results are generated. Developers can implement a search_log hook to add additional entries.
  • (new 6.x, 7.x) Search log has an experimental feature to attempt to capture failed searches. While most content reporting revolves around highlighting what is popular, identifying failed searches allows you to know what users are looking for and not finding (and then potentially going elsewhere).
  • (new 7.x) Search log provides a configurable Views block of Top searches. Clone the block to add additional Top Search blocks by time period, module.
  • (new 7.x) Search log supports logging the user language with the query. Top searches block can be configured to show only queries in the user's language.
  • (new 7.x) Search log reporting integrates with Google Chart API to provide some nice eye-candy.
  • Search log reporting can be filtered by date, module and status.
  • Search log table can be truncated at a user-specified interval or kept indefinitely.

Update: 2011-05-12

  • 7.x released with support for Views, Google Chart API, multilanguage queries, and more
  • 6.x fixed install error; released with new features; comments particularly welcome on preprocess_search_results() implementation
  • 5.x no longer supported


Search. Top searches block requires Views in 7.x.

Tested compatible with:

Limited compatibility with:

Related Modules

  • Top Searches
  • Zeitgeist
  • Google Analytics

    modules that collect core search statistics. It has been asked what is the difference between Search log and these modules. Fair question.

    If all you require is administrative reporting, Google Analytics probably does a better job (cheaper, faster). If, however, you want to display top searches as a block or have other uses for locally stored search statistics, then I would suggest the architecture differences of the modules are non-trivial.

    * Top Searches aggregates queries by keyword and does not allow reporting over an arbitrary period.

    * Zeitgeist records each query as a separate entry which adds database overhead, but also allows it to display the last N queries.

    * Search log aggregates queries by day which is similar to the core Statistics module. In addition, Search log also records failed searches for core search implementations without additional configuration.

    Failed search data could also be added to GA with custom pageTracker code and some URL rewriting.

  • Apache Solr Statistics
    beautiful admin implementation for Solr -- tip of the cap for providing inspiration to support Google Chart in Search log


After enabling the module, Search log will automatically begin recording queries from the search page, search block and theme search forms. Additional configuration is available here:

Search log replaces the default Top search page at:

Top Searches view block can be configured at:


Module development originally sponsored by Consumer Search, a service of, a part of The New York Times Company.

Project Information