{"id":17328382,"url":"https://github.com/dadoonet/injector","last_synced_at":"2026-02-11T00:02:57.820Z","repository":{"id":37884272,"uuid":"422113338","full_name":"dadoonet/injector","owner":"dadoonet","description":"This injector is used to demo elasticsearch and Kibana.","archived":false,"fork":false,"pushed_at":"2025-04-14T09:17:53.000Z","size":9012,"stargazers_count":6,"open_issues_count":1,"forks_count":1,"subscribers_count":2,"default_branch":"main","last_synced_at":"2025-04-14T10:28:55.983Z","etag":null,"topics":["elasticsearch","java"],"latest_commit_sha":null,"homepage":"","language":"Java","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/dadoonet.png","metadata":{"files":{"readme":"README.markdown","changelog":null,"contributing":null,"funding":null,"license":"LICENSE.txt","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2021-10-28T07:51:25.000Z","updated_at":"2025-04-14T09:17:56.000Z","dependencies_parsed_at":"2025-04-14T10:25:17.944Z","dependency_job_id":"d20a2e3a-4b3a-4574-92e6-eeef9d3b56e1","html_url":"https://github.com/dadoonet/injector","commit_stats":null,"previous_names":[],"tags_count":8,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dadoonet%2Finjector","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dadoonet%2Finjector/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dadoonet%2Finjector/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dadoonet%2Finjector/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/dadoonet","download_url":"https://codeload.github.com/dadoonet/injector/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248924094,"owners_count":21184019,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["elasticsearch","java"],"created_at":"2024-10-15T14:23:49.456Z","updated_at":"2025-04-14T17:22:47.312Z","avatar_url":"https://github.com/dadoonet.png","language":"Java","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Injector for demos\n\n\u003c!-- Documentation generated from `src/main/documentation/README.markdown`. Do not edit directly. --\u003e\n\nThis injector is used to demo\n[elasticsearch](https://www.elastic.co/products/elasticsearch) and [Kibana](https://www.elastic.co/products/kibana).\n\n| Injector           | elasticsearch            | Release date |\n|:-------------------|:-------------------------|:------------:|\n| 8.17-SNAPSHOT | 8.17.4 |              |\n| 8.16               | 8.16.1                   |  2024-12-09  |\n| 8.15               | 8.15.1                   |  2024-09-23  |\n| 8.7                | 8.7.0                    |  2023-04-20  |\n| 8.6                | 8.6.0                    |  2023-01-12  |\n| 8.4                | 8.4.1                    |  2022-09-06  |\n| 8.3                | 8.3.1                    |  2022-07-06  |\n| 8.0                | 8.0.0                    |  2022-02-16  |\n| 7.15               | 7.15.1                   |  2021-10-28  |\n| 7.0                | 7.0.0                    |  2019-04-11  |\n| 6.5                | 6.5.1                    |  2018-12-03  |\n| 6.4.2              | 6.4.2                    |  2018-10-03  |\n| 6.4                | 6.4.0                    |  2018-09-06  |\n| 6.2                | 6.2.3                    |  2018-04-09  |\n| 6.0                | 6.0.0-alpha1             |  2017-05-10  |\n| 5.3                | 5.3.2                    |  2017-05-05  |\n| 5.0                | 5.0.0                    |  2016-10-03  |\n| 5.0                | 5.0.0                    |  2016-03-31  |\n| 5.0                | 5.0.0-alpha1             |  2016-03-30  |\n| 3.2                | 2.2.0                    |  2016-02-05  |\n| 3.1                | 2.1.0                    |  2015-11-27  |\n| 3.0                | 2.0.0                    |  2015-11-12  |\n| 2.10               | 1.7.1                    |  2015-09-07  |\n| 2.9                | 1.6.0                    |  2015-06-15  |\n| 2.8                | 1.5.2                    |  2015-06-01  |\n| 2.7                | 1.4.4                    |  2015-02-24  |\n| 2.6                | 1.4.0                    |  2014-11-19  |\n| 2.5                | 1.3.2                    |  2014-09-02  |\n| 2.4                | 1.2.0                    |  2014-05-26  |\n| 2.3                | 1.1.1                    |  2014-05-06  |\n| 2.2                | 1.1.0                    |  2014-04-01  |\n| 2.1                | 1.0.0                    |  2014-03-21  |\n| 2.1.RC2            | 1.0.0.RC2                |  2014-02-04  |\n| 2.1.RC1            | 1.0.0.RC1                |  2014-01-23  |\n| 1.1                | 0.90.6                   |  2013-11-05  |\n| 1.0                | 0.90.5                   |  2013-10-01  |\n\n`*` Broken version\n\n## Status\n\n[![Maven Central](https://maven-badges.herokuapp.com/maven-central/fr.pilato.elasticsearch.injector/injector/badge.svg?style=flat-square)](https://maven-badges.herokuapp.com/maven-central/fr.pilato.elasticsearch.injector/injector/)\n[![Build and Deploy the main branch](https://github.com/dadoonet/injector/actions/workflows/main.yml/badge.svg)](https://github.com/dadoonet/injector/actions/workflows/main.yml)\n\n## Installation\n\n### Local installation\n\nYou will need Java 17 to run the injector.\n\n```sh\n# Download it from maven central\nwget https://repo1.maven.org/maven2/fr/pilato/elasticsearch/injector/injector/8.16/injector-8.16.jar\n\n# Launch it (with all default settings)\njava -jar injector-8.16.jar\n```\n\nIf you are looking for a SNAPSHOT version, please look into\n\u003chttps://s01.oss.sonatype.org/content/repositories/snapshots/fr/pilato/elasticsearch/injector/injector/8.17-SNAPSHOT/\u003e\n\n### Docker installation\n\n```sh\n# Pull the latest build\ndocker pull dadoonet/persons-injector\n\n# Or a specific version\ndocker pull dadoonet/persons-injector:8.16\n\n# Launch it (with all default settings)\ndocker run dadoonet/persons-injector\n```\n\nIf you are looking for a SNAPSHOT version, please look into \n\u003chttps://hub.docker.com/repository/docker/dadoonet/persons-injector/\u003e\n\n## Usage\n\nWith no option, it will inject `1000000` documents with a bulk size of `10000` in a local cluster running at\n\u003chttps://127.0.0.1:9200\u003e with default password `changeme` for user named `elastic`.\n\nInjector comes with the following implementations:\n\n* Elasticsearch (`--elasticsearch` flag), where you want to index generated data to an elasticsearch cluster running locally or on [cloud](https://cloud.elastic.co/).\n* Console (`--console` flag), where you want to just print on the console generated data.\n\nFor both, you can configure `--nb` option to define the number of documents you'd like to generate\n(defaults to `1000000`).\nAlso `--bulk` option can be set to define how many documents should be sent at once (defaults to `10000`).\n\nFor example:\n\n```sh\n# Docker installation\ndocker run dadoonet/persons-injector --nb 1000 --bulk 100\n# Local installation\njava -jar injector-8.16.jar --nb 1000 --bulk 100\n```\n\nIf no implementation is set, the injector will assume by default that you want to index your data in Elasticsearch\nand will set `--elasticsearch` flag for you.\n\n### Elasticsearch service\n\nWhen running an Elasticsearch instance, local or on [cloud.elastic.co](https://cloud.elastic.co/), you can define other options.\n\nTo define the host to send the data to, set `--es.host` option (defaults to `https://127.0.0.1:9200`):\n\n```sh\n# Docker installation\ndocker run dadoonet/persons-injector --elasticsearch --es.host https://cloud_id.europe-west1.gcp.cloud.es.io:9243\n# Local installation\njava -jar injector-8.16.jar --elasticsearch --es.host https://cloud_id.europe-west1.gcp.cloud.es.io:9243\n```\n\nIf your cluster is secured, which is what will happen most likely on cloud.elastic.co, use `--es.apikey` to set the [API Key](https://www.elastic.co/guide/en/elasticsearch/reference/current/security-api-create-api-key.html) to use.\n\n```sh\n# Docker installation\ndocker run dadoonet/persons-injector --elasticsearch --es.apikey API_KEY\n# Local installation\njava -jar injector-8.16.jar --elasticsearch --es.apikey API_KEY\n```\n\nIf you'd like to index your data in another index than `person` (default one), use `--es.index`:\n\n```sh\n# Docker installation\ndocker run dadoonet/persons-injector --elasticsearch --es.index person\n# Local installation\njava -jar injector-8.16.jar --elasticsearch --es.index person\n```\n\n**Note:** `--es.user` (defaults to `elastic`) and `--es.pass` are deprecated and should not be used anymore.\n\nIf you want to use Kibana to display the information that have been generated, you can import the following\nfiles into Kibana using `Stack Management -\u003e Kibana -\u003e Saved Objects` menu and click on \"Import\":\n\n* Data view, Dashboard, Maps, Visualisations: \u003chttps://github.com/dadoonet/injector/blob/main/src/main/resources/kibana-dashboard.ndjson\u003e\n* Canvas example: \u003chttps://github.com/dadoonet/injector/blob/main/src/main/resources/kibana-canvas.ndjson\u003e\n\nExample of the Persons dataset dashboard:\n\n![Persons dataset dashboard](images/dashboard.png \"Persons dataset dashboard\")\n\nExample of the Canvas presentation:\n\n![Canvas presentation](images/canvas.png \"Canvas presentation\")\n\n### Console\n\nWhen printing documents to the console, you can choose to prettify the documents first by using `cs.pretty` option:\n\n```sh\n# Docker installation\ndocker run dadoonet/persons-injector --console --cs.pretty\n# Local installation\njava -jar injector-8.16.jar --console --cs.pretty\n```\n\n### Using all services together\n\nYou can start the injector like this (all options together):\n\n```sh\n# Docker installation\ndocker run dadoonet/persons-injector \\\n    --nb 1000 --bulk 100 \\\n    --elasticsearch --es.host https://cloud_id.europe-west1.gcp.cloud.es.io:9243 --es.apikey API_KEY --es.index person \\\n    --console --cs.pretty\n# Local installation\njava -jar injector-8.16.jar \\\n    --nb 1000 --bulk 100 \\\n    --debug \\\n    --elasticsearch --es.host https://cloud_id.europe-west1.gcp.cloud.es.io:9243 --es.apikey API_KEY --es.index person \\\n    --console --cs.pretty\n```\n\nWhen you build the project with maven, you'll see in `target/scripts` dir an example\nof scripts which you can adapt to your needs.\n\n### Debug options\n\nYou can use `--silent`, `--debug` or `--trace` to change the log level when using the injector.\nThat can give you more information when something is failing for example.\n\n## Documentation\n\nIf you wish to edit the documentation, please edit it in `src/main/documentation`.\n\nThen run the following commands to update the README in the root of this project and commit your changes:\n\n```shell\nmvn clean process-resources\ngit commit -a -m \"Update documentation\"\n```\n\n## Developer Guide\n\nIf you want to build it yourself or update to a new elasticsearch version, modify `pom.xml` file:\n\n```xml\n\u003celasticsearch.version\u003e8.17.4\u003c/elasticsearch.version\u003e\n```\n\nThen compile the project:\n\n```sh\n# Compile\nmvn clean install\n```\n\nJust get the final jar from `target/injector-8.17-SNAPSHOT.jar`. Or:\n\n```sh\ncd target\n```\n\nAnd launch all the examples from this dir.\n\n## Release guide\n\nIdeally, modify the `src/main/documentation/README.markdown` file to add a static line with the release.\nAlso modify the `injector.stable.version` property in the `pom.xml` and commit the changes:\n\n```shell\nmvn clean process-resources\ngit commit -a -m \"Document the stable version\"\n```\n\nTo release the project you need to run the release plugin with the `release` profile as you need to sign the artifacts:\n\n```sh\nmvn release:prepare\ngit push --tags\ngit push\nmvn release:perform -Prelease\n```\n\nIf you need to skip the tests, run:\n\n```sh\nmvn release:perform -Prelease -Darguments=\"-DskipTests\"\n```\n\nIf everything is ok in \u003chttps://central.sonatype.com/artifact/fr.pilato.elasticsearch.injector/injector\u003e, \nyou can confirm the release from the sonatype UI.\n\n## License\n\n```txt\nThis software is licensed under the Apache 2 license, quoted below.\n\nCopyright 2009-2025 Elastic \u003chttps://www.elastic.co\u003e\n\nLicensed under the Apache License, Version 2.0 (the \"License\"); you may not\nuse this file except in compliance with the License. You may obtain a copy of\nthe License at\n\n    https://www.apache.org/licenses/LICENSE-2.0\n\nUnless required by applicable law or agreed to in writing, software\ndistributed under the License is distributed on an \"AS IS\" BASIS, WITHOUT\nWARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the\nLicense for the specific language governing permissions and limitations under\nthe License.\n```\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdadoonet%2Finjector","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fdadoonet%2Finjector","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdadoonet%2Finjector/lists"}