blob: c246c89cd8d0342bf2eb4f6edc59ab2c1bad1ad0 [file] [log] [blame]
{% include anchor.html edit="true" title="Debug mode" hash="debug_mode" %}
PouchDB uses the [debug](https://www.npmjs.org/package/debug) module for fine-grained debug output.
{% include alert/start.html variant="warning"%}
{% markdown %}
This `debug()` API is currently part of PouchDB core. However, in PouchDB v7.0.0 it will be moved to a separate plugin.
{% endmarkdown %}
{% include alert/end.html%}
To enable debug mode, just call:
{% highlight js %}
PouchDB.debug.enable('*');
{% endhighlight %}
In your browser console, you should then see something like this:
{% include img.html src="debug_mode.png" alt="Coloured Log Output" %}
In Node.js, you can also set a command-line flag:
{% highlight bash %}
DEBUG=pouchdb:* node myscript.js
{% endhighlight %}
You can also enable debugging of specific modules. Currently we only have `pouchb:api` (API-level calls) and `pouchdb:http` (HTTP requests):
{% highlight js %}
PouchDB.debug.enable('pouchdb:api'); // or
PouchDB.debug.enable('pouchdb:http');
{% endhighlight %}
These settings are saved to the browser's LocalStorage. So to disable them, you must call:
{% highlight js %}
PouchDB.debug.disable();
{% endhighlight %}
Your users won't see debug output unless you explicitly call `PouchDB.debug.enable()` within your application code.