{"id":25091457,"url":"https://github.com/hardisgroupcom/vagrant-elk-reflex","last_synced_at":"2025-10-27T02:12:26.889Z","repository":{"id":105031965,"uuid":"71801522","full_name":"hardisgroupcom/vagrant-elk-reflex","owner":"hardisgroupcom","description":"Vagrant project ELK, InfluxDB and Grafana","archived":false,"fork":false,"pushed_at":"2018-04-05T13:24:30.000Z","size":1991,"stargazers_count":1,"open_issues_count":0,"forks_count":1,"subscribers_count":4,"default_branch":"master","last_synced_at":"2025-04-01T20:47:14.355Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"","language":"Ruby","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"other","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/hardisgroupcom.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":null,"funding":null,"license":"LICENSE","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}},"created_at":"2016-10-24T15:11:42.000Z","updated_at":"2018-04-05T13:24:31.000Z","dependencies_parsed_at":null,"dependency_job_id":"62b3d46e-a49b-49ab-a5c4-6befc6d064bb","html_url":"https://github.com/hardisgroupcom/vagrant-elk-reflex","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/hardisgroupcom/vagrant-elk-reflex","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hardisgroupcom%2Fvagrant-elk-reflex","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hardisgroupcom%2Fvagrant-elk-reflex/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hardisgroupcom%2Fvagrant-elk-reflex/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hardisgroupcom%2Fvagrant-elk-reflex/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/hardisgroupcom","download_url":"https://codeload.github.com/hardisgroupcom/vagrant-elk-reflex/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hardisgroupcom%2Fvagrant-elk-reflex/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":262941543,"owners_count":23388148,"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":[],"created_at":"2025-02-07T13:34:59.265Z","updated_at":"2025-10-27T02:12:21.858Z","avatar_url":"https://github.com/hardisgroupcom.png","language":"Ruby","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Reflex Monitoring Tool\n\n**Release : 1.0.0**. \nSee [Changelog](CHANGELOG.md).\n\nThe Reflex Monitoring Tool use Vagrant to install a ready-to-use virtual machine on your server.\n\nThis tool embeds the following technologies :\n * Redis 3.2.1\n * Logstash 2.4.0\n * ElasticSearch 2.4.1\n * Kibana 4.6.1\n * InfluxDB 1.1.1\n * Grafana 4.0.2\n\n\n## Limitation\nThis tool is distributed on an **\"AS IS\" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND**.\n\nThis tool is ready to use **as a standalone stack** :\n* Not designed for a large scale usage\n* Not securised\n* No high availability\n* No authentication\n\n\n## Service\n\nA Reflex Monitoring Tool with advanced features (large scale sizing, high availability, security, authentication, ...) requires supplementary services. Please contact your project manager at Hardis to get a quotation.\n\n\n## Prerequisites\n\n### Hardware\n\nIt is strongly recommended to use a dedicated server to install the monitoring tool. And to not install it on a server where a Reflex instance is running.\n\nHardware virtualization feature has to be enabled on the server processor.\n\nThe disk space usage depends on the number of Reflex server connected, the trace quantity sent and the retention duration configured. It is recommended to start with at least 50 GB.\n\n\n### Software\n\nThe following applications have to be installed on your host server before installing the Reflex monitoring tool :\n\n* [VirtualBox](https://www.virtualbox.org/) \n* [Vagrant](http://www.vagrantup.com/) (minimum version 1.6)\n* [Git](https://git-scm.com/)\n\n\n\n## Get the stack\n\nOpen a command-line prompt into your working directory and execute :\n```\ngit clone --recursive https://github.com/hardisgroupcom/vagrant-elk-reflex.git\n```\n\nA directory named `vagrant-elk-reflex` containing the monitoring tool project is created.\n\n\n## Start\n\nInto a command-line prompt, move into the monitoring tool project directory :\n```\ncd vagrant-elk-reflex\n```\n\nTo start the vagrant box run :\n```\nvagrant up\n```\n\nThe first start takes time (up to 30 minutes according to network bandwidth) because it retrieves several libraries from network repositories.\n\n## Usage\n\nThe reflex Monitoring Tool is now ready to use with 2 front-end tools : \n\n* The Reflex server monitoring tool (Grafana) is available on the host machine at [http://localhost:3000/](http://localhost:3000/). \n\t* Default credentials : `admin / admin`.\n\t* Dashboard : Reflex.\n\t* Usage guide : [Grafana_user_guide.pdf](Documentation/Grafana_user_guide.pdf).\n\n* The Reflex trace analysis tool (Kibana) is available on the host machine at [http://localhost:5601/](http://localhost:5601/app/kibana#/dashboard/Main-Reflex). \n\t* Dashboard : Main Reflex.\n\t* Refresh the web page after the first Reflex server is connected.\n\t* Usage guide : [Kibana_user_guide.pdf](Documentation/Kibana_user_guide.pdf).\n\n\n## Reflex Web connection\n\nNow you can configure your Reflex Web server to use this monitoring stack.\n\n### Log4j\n\nLog4j trace configuration is explained into the infrastructure guide of the product.\n\n\n### Jcollectd\n\nJcollectd Reflex configuration files are provided in Reflex product :\n\t* conf/wagon-jcollectd.properties\n\t* conf/jmiddleware-jcollectd.properties\n\nThis configuration allows Reflex Web JVMs to send metrics to the monitoring tool.\n\n*The server CPU metric does not work on Windows operating system.*\n\n\nIn order to use this configuration :\n\n* Download the jcollectd jar library from [Maven Central](http://search.maven.org/#search%7Cga%7C1%7Ccom.hardis.collectd.jcollectd) repository. Artefact name : `com.hardis.collectd.jcollectd`.\n\n* Deploy this jar file on all Reflex server you would like to monitor. *Do not place this library inside the Reflex product directory path*.\n\n* Update Reflex JVM parameters to send collectd metrics : \n\t* On Linux \n\t\t* For the web server JVMs, update `CATALINA_CUSTOM_PARAM` variable of `conf/unix_rfx_web_config` file to add :\n\n\t\t\t```\n\t\t\t-javaagent:/path/to/jcollectd/jcollectd-1.0.3.jar -Djcd.properties=$REFLEX_HOME/conf/wagon-jcollectd.properties\n\t\t\t```\n\n\t\t* For the batch server JVMs, update `RFX_CUSTOM_PARAM` variable of `conf/unix_rfx_jdaemon_config` file to add :\n\n\t\t\t```\n\t\t\t-javaagent:/path/to/jcollectd/jcollectd-1.0.3.jar -Djcd.properties=$REFLEX_HOME/conf/jmiddleware-jcollectd.properties\n\t\t\t```\n\n\t\t* Restart Reflex services : `reflex_services.sh restart`\n\n\t* On Windows\n\t\t* For the web server JVMs, update `CATALINA_CUSTOM_PARAM` variable of `conf/reflex_cloud_service_config.bat` file to add :\n\n\t\t\t```\n\t\t\t-javaagent:\\path\\to\\jcollectd\\jcollectd-1.0.3.jar;-Djcd.properties=%REFLEX_HOME%\\conf\\wagon-jcollectd.properties;\n\t\t\t```\n\n\t\t* For the batch server JVMs, update `RFX_CUSTOM_PARAM` variable of `conf/win_rfx_jdaemon_config.bat` file to add :\n\n\t\t\t```\n\t\t\t-javaagent:\\path\\to\\jcollectd\\jcollectd-1.0.3.jar -Djcd.properties=%REFLEX_HOME%\\conf\\jmiddleware-jcollectd.properties\n\t\t\t```\n\n\t\t* Uninstall the Reflex services :\n\t\t\t* Execute `%REFLEX_HOME%\\product\\bin\\reflex_cloud_service_uninstall.bat`\n\t\t\t* Execute `%REFLEX_HOME%\\product\\bin\\win_rfx_jdaemon_uninstall.bat`\n\t\t* (Re)Install the Reflex services :\n\t\t\t* Execute `%REFLEX_HOME%\\product\\bin\\reflex_cloud_service_install.bat`\n\t\t\t* Execute `%REFLEX_HOME%\\product\\bin\\win_rfx_jdaemon_install.bat`\n\n* Update jcollectd configuration files (`conf/wagon-jcollectd.properties` and `conf/jmiddleware-jcollectd.properties`)\n\t* Replace `influxdbServerAddress` by the address of your monitoring tool server.\n\t* Replace `influxdbServerPort` by the influxdb port of your monitoring server (influx db default port : 25826)\n\n\n## Settings\n\nThe following settings can be customized.\n\n### Memory allocation\n\nBy default, memory allocated to the virtual machine is **2 GB**.\n\nTo update this value, edit file `Vagrantfile` line `vb.memory`.\n\n\n### Redis configuration\n\nBy default, the password defined to Redis is `changeMe`.\n\nTo update this value, edit file `cookbooks/elk-hardis/attributes/default.rb` to set :\n\n`default['elk-hardis']['redis_password']` - Password used by Redis (and Logstash)\n\n\n### Data retention configuration\n\nBy default, the retention duration of monitoring data is **3 days**.\n\nTo update this value, edit file `cookbooks/elk-hardis/attributes/default.rb` to set :\n\n`default['elk-hardis']['retention_days_number']` - retention duration in days used by ElasticSearch and InfluxDB.\n\n\n### Internal configuration\n\nThe back-end tools are configured as follow :\n\n* Elasticsearch is available on the host machine at [http://localhost:9200/](http://localhost:9200/).\n\n* Redis is collecting data on the host machine at [tcp://localhost:6379](tcp://localhost:6379).\n\n* InfluxDB is collecting Collectd data on the host machine at [udp://localhost:25826](udp://localhost:25826).\n\n* InfluxDB is collecting Telegraf data on the host machine at [udp://localhost:25827](udp://localhost:25827).\n\n* Logstash is reading data from Redis with key 'wms' and pushing to ElasticSearch with index 'logstash-%{+YYYY.MM.dd}'.\n\n\nYou can collect any log4j to redis by using [log4j-redis-appender](https://github.com/hardisgroupcom/log4j-redis-appender).\n\nYou can collect any collectd data from [collectd](https://collectd.org) or from a jvm by using [jcollectd](https://github.com/hardisgroupcom/jcollectd).\n\n\n\n## Update\n\n### Deploy new settings\n\nEach time you modify the settings, you have to update the running instance of the monitoring tool.\n\nFrom the monitoring tool project directory, run :\n* `vagrant provision`       if the monitoring stack is already started\n* `vagrant up --provision`  if the monitoring stack is stopped\n\nYou can get more details about Vagrant commands by running : `vagrant help`\n\n\n### Get last changes\n\nThis project is versionned using Git.\n\nIn order to update your local version from the GitHub repository, run `git pull` on the master branch.\n\n\n## Dependencies\n\n[chef-elk-hardis](https://github.com/hardisgroupcom/chef-elk-hardis) - Hardis elk cookbook\n\n## License\n\nPublished under Apache Software License 2.0, see LICENSE\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fhardisgroupcom%2Fvagrant-elk-reflex","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fhardisgroupcom%2Fvagrant-elk-reflex","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fhardisgroupcom%2Fvagrant-elk-reflex/lists"}