summaryrefslogtreecommitdiff
path: root/docs/perl
diff options
context:
space:
mode:
authorClinton Gormley <clint@traveljury.com>2013-10-15 17:22:21 +0200
committerClinton Gormley <clint@traveljury.com>2013-10-15 17:22:34 +0200
commit4798425da6f1a009db1ddf3519adcd94a31b6dfc (patch)
treecc3763d990d15e3c7d6f5f953acac7cf237714c5 /docs/perl
parent4d19239ec4966c82b2cc9793902686f0cbab0fcf (diff)
[Docs] Added a page for the Perl client
Diffstat (limited to 'docs/perl')
-rw-r--r--docs/perl/index.asciidoc106
1 files changed, 106 insertions, 0 deletions
diff --git a/docs/perl/index.asciidoc b/docs/perl/index.asciidoc
new file mode 100644
index 0000000000..967d64e972
--- /dev/null
+++ b/docs/perl/index.asciidoc
@@ -0,0 +1,106 @@
+= Elasticsearch.pm
+
+== Overview
+
+Elasticsearch.pm is the official Perl API for Elasticsearch. The full
+documentation is available on https://metacpan.org/module/Elasticsearch
+and it can be installed with:
+
+[source,sh]
+------------------------------------
+cpanm Elasticsearch
+------------------------------------
+
+=== Features
+
+This client provides:
+
+* Full support for all Elasticsearch APIs
+
+* HTTP backend (currently synchronous only - Any::Event support will be added later)
+
+* Robust networking support which handles load balancing, failure detection and failover
+
+* Good defaults
+
+* Helper utilities for more complex operations, such as bulk indexing, scrolled searches and reindexing.
+
+* Logging support via Log::Any
+
+* Compatibility with the official clients for Python, Ruby, PHP and Javascript
+
+* Easy extensibility
+
+== Synopsis
+
+[source,perl]
+------------------------------------
+use Elasticsearch;
+
+# Connect to localhost:9200:
+my $e = Elasticsearch->new();
+
+# Round-robin between two nodes:
+my $e = Elasticsearch->new(
+ nodes => [
+ 'search1:9200',
+ 'search2:9200'
+ ]
+);
+
+# Connect to cluster at search1:9200, sniff all nodes and round-robin between them:
+my $e = Elasticsearch->new(
+ nodes => 'search1:9200',
+ cxn_pool => 'Sniff'
+);
+
+# Index a document:
+$e->index(
+ index => 'my_app',
+ type => 'blog_post',
+ id => 1,
+ body => {
+ title => 'Elasticsearch clients',
+ content => 'Interesting content...',
+ date => '2013-09-24'
+ }
+);
+
+# Get the document:
+my $doc = $e->get(
+ index => 'my_app',
+ type => 'blog_post',
+ id => 1
+);
+
+# Search:
+my $results = $e->search(
+ index => 'my_app',
+ body => {
+ query => {
+ match => { title => 'elasticsearch' }
+ }
+ }
+);
+------------------------------------
+
+== Reporting issues
+
+The GitHub repository is http://github.com/elasticsearch/elasticsearch-perl
+and any issues can be reported on the issues list at
+http://github.com/elasticsearch/elasticsearch-perl/issues.
+
+== Contributing
+
+Open source contributions are welcome. Please read our
+https://github.com/elasticsearch/elasticsearch-perl/blob/master/CONTRIBUTING.asciidoc[guide to contributing].
+
+== Copyright and License
+
+This software is Copyright (c) 2013 by Elasticsearch BV.
+
+This is free software, licensed under:
+https://github.com/elasticsearch/elasticsearch-perl/blob/master/LICENSE.txt[The Apache License Version 2.0].
+
+
+