NOTE: You are looking at documentation for an older release. For the latest information, see the current release documentation.
X-Opaque-Id support
editX-Opaque-Id support
editTo improve the overall observability, the client offers an easy way to configure the X-Opaque-Id
header. If you set the X-Opaque-Id
in a specific request, this will allow you to discover this identifier in the deprecation logs, help you with identifying search slow log origin as well as identifying running tasks.
The X-Opaque-Id
should be configured in each request, for doing that you can use the opaqueId
option, as you can see in the following example.
The resulting header will be { 'X-Opaque-Id': 'my-search' }
.
const { Client } = require('@elastic/elasticsearch') const client = new Client({ node: 'http://localhost:9200' }) client.search({ index: 'my-index', body: { foo: 'bar' } }, { opaqueId: 'my-search' }, (err, result) => { if (err) console.log(err) })
Sometimes it may be useful to prefix all the X-Opaque-Id
headers with a specific string, in case you need to identify a specific client or server. For doing this, the client offers a top-level configuration option: opaqueIdPrefix
.
In the following example, the resulting header will be { 'X-Opaque-Id': 'proxy-client::my-search' }
.
const { Client } = require('@elastic/elasticsearch') const client = new Client({ node: 'http://localhost:9200', opaqueIdPrefix: 'proxy-client::' }) client.search({ index: 'my-index', body: { foo: 'bar' } }, { opaqueId: 'my-search' }, (err, result) => { if (err) console.log(err) })