| 1 | = HAMcast Monitoring Framework = |
| 2 | |
| 3 | == NAME == |
| 4 | |
| 5 | monitoring - A monitoring framework for HAMcast nodes and networks |
| 6 | |
| 7 | == BUILD/INSTALL == |
| 8 | |
| 9 | === Requirements === |
| 10 | |
| 11 | - cmake (Version 2.6+) |
| 12 | - cmake macro 'FindLibHamcast.cmake' |
| 13 | - boost libraries developers version |
| 14 | - QT libraries developers version (mviewer only) |
| 15 | - iGraph library developers version (mviewer only) |
| 16 | - HAMcast library and middleware |
| 17 | |
| 18 | === Build === |
| 19 | |
| 20 | We recommend an 'out-of-source' cmake-build. Create a new folder, e.g. |
| 21 | 'build' within the source directory. Change to new folder (cd build) |
| 22 | and run: |
| 23 | {{{ |
| 24 | cmake ../ |
| 25 | }}} |
| 26 | if you have not install libhamcast to standard directories, run: |
| 27 | {{{ |
| 28 | cmake -DHAMCAST_INCLUDE_PATH=<path-to-headers> \ |
| 29 | -DHAMCAST_LIBRARY_PATH=<path-to-libhamcast> ../ |
| 30 | }}} |
| 31 | 'path-to-headers' is the absolute path where 'hamcast/hamcast.hpp' can |
| 32 | be found. 'path-to-libhamcast' is the absolute path where 'libhamcast.so' |
| 33 | can be found. If both are the same, you have to provide only one of them. |
| 34 | This will initialize build environment, if no errors occure run: |
| 35 | {{{ |
| 36 | make |
| 37 | }}} |
| 38 | If build was successful you find the binaries in 'build' folder. |
| 39 | |
| 40 | === Install === |
| 41 | |
| 42 | Currently not supported. Just run framework from build folder. |
| 43 | |
| 44 | == EXAMPLES == |
| 45 | |
| 46 | To run the monitoring framework you have to start the monitoring daemon |
| 47 | on every HAMcast node you want to monitor. The second program that |
| 48 | needs to be running is the monitoring collector. |
| 49 | The collector only has to run once on any desired machine. |
| 50 | There is no execution order for the daemons and collector. |
| 51 | If daemons and collector are running the monitoring viewer can be executed. |
| 52 | The viewer is the graphical user interface of the monitoring framework. |
| 53 | It captures and displays HAMcast node information. |
| 54 | |
| 55 | === mdaemon === |
| 56 | |
| 57 | The daemon needs two command line arguments in order to run. |
| 58 | The first argument is a daemon-id "-d" to define the name of the node. |
| 59 | This id will be used as a representation for the node. |
| 60 | The second argument is a HAMcast group uri "-g". |
| 61 | This argument needs to be set to the same value as the group |
| 62 | of the collector. This group is used by the monitoring framework |
| 63 | in order to find nodes. |
| 64 | All arguments are optional, the program can also run on default settings. |
| 65 | {{{ |
| 66 | ./mdaemon -d example -g ip://239.0.0.1:1234 |
| 67 | }}} |
| 68 | |
| 69 | === mcollector === |
| 70 | |
| 71 | In order to run the collector takes four command line arguments. |
| 72 | A port that has to be reachable "-p". |
| 73 | A HAMcast group uri that has to be the same as the daemons uri "-g". |
| 74 | Two time intervals that define how frequently nodes will be fetched "-m" |
| 75 | and how frequently node information will be updated "-s". |
| 76 | The time is indicated in seconds. |
| 77 | All arguments are optional and can be run on default. |
| 78 | {{{ |
| 79 | ./mcollector -g ip://239.0.0.1:1234 -p 35000 -s 10 -m 30 |
| 80 | }}} |
| 81 | === mviewer === |
| 82 | |
| 83 | The monitoring viewer takes no command line argument. On startup the view |
| 84 | opens a window where the ip-address and port of the collector has to be |
| 85 | committed. |
| 86 | |
| 87 | == NOTES == |
| 88 | |
| 89 | The monitoring framework consists of three components (i) mdaemon, |
| 90 | (ii) mcollector, and (iii) mviewer. Additional information on these |
| 91 | can be found in corresponding REAMDE in subdirectories. |
| 92 | |