OpenSearch
Important
To save data to OpenSearch install garf-io with OpenSearch support
pip install garf-io[opensearch]
opensearch writer allows you to index GarfReport to OpenSearch.
garf query.sql --source API_SOURCE \
--output opensearch \
--opensearch.hosts=localhost:9200
from garf.core import report
from garf.io.writers import opensearch_writer
# Create example report
sample_report = report.GarfReport(results=[[1]], column_names=['one'])
writer = opensearch_writer.OpenSearchWriter(hosts='localhost:9200')
writer.write(sample_report, 'index_name')
Parameters
Hosts
By default it connects to localhost:9200.
You can overwrite it with hosts parameter.
garf query.sql --source API_SOURCE \
--output opensearch \
--opensearch.hosts=host1:9200,host2:9200
from garf.core import report
from garf.io.writers import opensearch_writer
# Create example report
sample_report = report.GarfReport(results=[[1]], column_names=['one'])
writer = opensearch_writer.OpenSearchWriter(hosts=["host1:9200", "host2:9200"])
writer.write(sample_report, 'index_name')
Authentication
You can provide authentication credentials using http_auth parameter (Python only).
from garf.core import report
from garf.io.writers import opensearch_writer
# Create example report
sample_report = report.GarfReport(results=[[1]], column_names=['one'])
writer = opensearch_writer.OpenSearchWriter(
hosts='localhost:9200',
http_auth=('user', 'password')
)
writer.write(sample_report, 'index_name')