history.txt 7.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228
  1. MoSheL: MOnitoring with SHEll Locally
  2. HISTORY
  3. First I wrote plugins for the Nagios (formerly NetSaint), especially the
  4. various versions of ASLrules (for Astaro Forewall, now sold as Sophos UTM).
  5. As most of the servers/services I want to monitor are remote systems,
  6. traditional NMS (relying on close-looped and/or unencrypted sessions) are
  7. either big, complicated to install for safe remote monitoring, ressource
  8. intense (when doing remote checks), lack a status history or a combination
  9. thereof.
  10. Thus I wrote a small, easily configured system: MoSSHe, later MoSShE.
  11. It primarily was intended for monitoring of a handful of typical internet
  12. systems. The more recent versions supported system and grouping features
  13. monitoring of serious numbers of systems.
  14. Constant changes in APIs and output formatting of tools made a proper
  15. support and maintenance difficult. Plus calculating averages etc. in
  16. BASH (which is nototiously SLOW) put a real strain on small monitoring
  17. servers like a RaspberryPi.
  18. So after 17 years after the first MoSSHe installment and 11 years after
  19. the big MoSShE rewrite this is the next iteration: even smaller, more
  20. decentralized, easier to adapt to local peculiarities.
  21. For bug reports and suggestions or if you just want to talk to me
  22. please contact me at volker.tanger@wyae.de
  23. Updates will be available at http://www.wyae.de/software/moshel/
  24. please check there for updates prior to submitting patches!
  25. ------------------------------------------------------------------------
  26. todo:
  27. - BUG (to fix): locking
  28. - NEED: move temp. directory (status, flap detection) to increase
  29. SD-card/SSD lifetime
  30. needs: protection against symlink attacks
  31. - want: SLA reports, downtimes/availability
  32. - want: (re)check on Bourne-SH and Busybox compatibility
  33. - maybe: modular checks for easier installation by installed software
  34. (specific checks for MySQL, postfix, dovecot, apache, ...)
  35. - maybe: CheckResultIsExactly (String-Match)
  36. can be done with
  37. "CheckCountMoreThan TITLE "script" '/MATCH/{print $0}' 0 "ERRORMSG"
  38. - maybe: CheckResultDoesNotContain (String-Match)
  39. can be done with
  40. "CheckCountLessThan TITLE "script" '/MATCH/{print $0}' 1 "ERRORMSG"
  41. wanted checks (examples)
  42. - network bandwidth
  43. - AVM Fritz!Box router status
  44. - SNMP especially for Windows servers
  45. - disk usage of single directory
  46. - remote checks: IMAP, POP3, SMTP, SAMBA, ...
  47. (local checks for bound ports are already available)
  48. - KVM (and other virtualization) checks
  49. ------------------------------------------------------------------------
  50. 2024-08-27
  51. Volker Tanger <volker.tanger@wyae.de>
  52. * bugfix: corrected bugfix before: check for non-numeric values.
  53. 2024-08-05
  54. Volker Tanger <volker.tanger@wyae.de>
  55. * bugfix: removed old "check failed" when value is 0
  56. 2024-08-02
  57. Volker Tanger <volker.tanger@wyae.de>
  58. * feature: changed alert message (removed values) to reduce alert fatique
  59. 2024-07-26
  60. Volker Tanger <volker.tanger@wyae.de>
  61. * feature: added maintenance mode, disabling checks (just insert message)
  62. 2024-05-28
  63. Volker Tanger <volker.tanger@wyae.de>
  64. * bugfix: stabilized OpenDTU + Shelly queries (longer timeout, retries)
  65. 2024-05-16
  66. Volker Tanger <volker.tanger@wyae.de>
  67. * feature: added OpenDTU to example
  68. (solar generation readout for Hoymiles micro-inverters)
  69. 2024-05-08
  70. Volker Tanger <volker.tanger@wyae.de>
  71. * feature: added Shelly Gen2 API to example (e.g. for ShellyPlugS)
  72. 2024-05 onward
  73. re-licensed unter EUPL v1.2
  74. 2023-11 onward
  75. see the GIT repository https://git.wyae.de/WYAE/moshel
  76. v2.1.3 2023-09-02
  77. Volker Tanger <volker.tanger@wyae.de>
  78. * cleanup/bugfix: added "-f" to "rm" at the beginin of Centralize() to avoid error message
  79. v2.1.2 2023-08-01
  80. Volker Tanger <volker.tanger@wyae.de>
  81. * cleanup: deprecating Summarize()
  82. * feature: preparing mail alerts for individual funtions
  83. * bugfix: accidentally published a non-working intermediate
  84. state (bad escaping-CopyPaste, missing funcrion end)
  85. v2.1.0 2023-05-24
  86. Volker Tanger <volker.tanger@wyae.de>
  87. * cleanup: escaping if variables in Centralize()
  88. * cleanup: removed even more from deprecated Summarize()
  89. * cleanup: prepared for explicit mail alerts and central
  90. mail alerts
  91. v2.0.2 2023-05-17
  92. Volker Tanger <volker.tanger@wyae.de>
  93. * bugfix: ActionOnAlert did not do anything, only mailed that
  94. it did. Now added the missing command execution.
  95. v2.0.1 2023-04-01
  96. Volker Tanger <volker.tanger@wyae.de>
  97. * bugfix: ActionOnAlert triggered on failure AND(!) resolve,
  98. now on failure only.
  99. v2.0.0 2023-03-19
  100. Volker Tanger <volker.tanger@wyae.de>
  101. * (unlikely but) breaking change: removed unused "checks" file
  102. * feature: ActionOnAlert - automate e.g. restart
  103. v1.1.1 2022-09-14
  104. Volker Tanger <volker.tanger@wyae.de>
  105. * bugfix: fix copy-paste-error (when snippet unreachable)
  106. * feature: create central overview page with all graphs
  107. * deprecate warning for Summarize()
  108. v1.1.0 2022-09-13
  109. Volker Tanger <volker.tanger@wyae.de>
  110. * bugfix: reduce timeout for summary page
  111. * cleanup: create subroutine for message outputs
  112. * feature: create local overview page with all graphs
  113. v1.0.13 2022-06-12
  114. Volker Tanger <volker.tanger@wyae.de>
  115. * bugfix: correct incomplete lines in QNAP snmp check sample
  116. v1.0.12 2022-02-19
  117. Volker Tanger <volker.tanger@wyae.de>
  118. * feature: added radio temperature sensor readout check
  119. * feature: added checks wether there are services which bound
  120. TCP ports (i.e. are running)
  121. v1.0.11 2021-11.21
  122. Volker Tanger <volker.tanger@wyae.de>
  123. * feature: added TLS certificate check for https
  124. v1.0.10 2021-09-07
  125. Volker Tanger <volker.tanger@wyae.de>
  126. * bugfix: position change for mysqladmin in the new Debian 11
  127. * feature: convert KB/MB/GB (see RAM and HDD capacity checks)
  128. * feature/bug(fix): alternate memory check for Linux
  129. (the "free"-based sometimes fails for unknown reasons)
  130. v1.0.9 2021-05-26
  131. Volker Tanger <volker.tanger@wyae.de>
  132. * feature: test for measuring PING times (avg.)
  133. v1.0.8 2021-04-30
  134. Volker Tanger <volker.tanger@wyae.de>
  135. * bugfix: basic value verification (better error handling)
  136. * bugfix: alert if status download in SUMMARY command fails
  137. * feature: monitoring APC UPCs with apcaccess tool (part of apcupsd)
  138. v1.0.7 2021-02-20
  139. Volker Tanger <volker.tanger@wyae.de>
  140. * feature: monitoring QNAP NAS via SNMP
  141. v1.0.6 2020-12-15
  142. Volker Tanger <volker.tanger@wyae.de>
  143. * bugfix: corrected nonworking FlipFlop-detection
  144. v1.0.5 2020-11-26
  145. Volker Tanger <volker.tanger@wyae.de>
  146. * feature: SmartMonTools SSD + HDD measurements
  147. v1.0.4 2020-11-12
  148. Volker Tanger <volker.tanger@wyae.de>
  149. * feature: temperature measurement for RaspberryPi4
  150. * bugfix: added missing removing temp diff files
  151. v1.0.3 2020-10-30
  152. Volker Tanger <volker.tanger@wyae.de>
  153. * bugfix: alerting caused shell error messages whenver there
  154. was no alert (error was introduced in 1.0.2)
  155. * bugfix: wait a bit for other systems in Summary()
  156. v1.0.2 2020-10-29
  157. Volker Tanger <volker.tanger@wyae.de>
  158. * bugfix: alerting now without values so they do not trigger
  159. new alerts whenever an alerted state changes value
  160. * feature: alarm with "changed" section, to get "ok again"
  161. mails, too.
  162. v1.0.1 2020-10-10
  163. Volker Tanger <volker.tanger@wyae.de>
  164. * cleanup: typos, formatting
  165. v1.0.0 2020-10-10
  166. Volker Tanger <volker.tanger@wyae.de>
  167. * initial release
  168. -----------------------------------------------------------------------
  169. Licensed under the EUROPEAN UNION PUBLIC LICENCE v. 1.2 (or later)
  170. -----------------------------------------------------------------------
  171. This is free software - see attached file LICENSE_EUPL-1.2_EN.txt
  172. and available in other languages under
  173. https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12
  174. Copyright (C) 2020- Volker Tanger
  175. -----------------------------------------------------------------------