Awesome, I tested the beta version and found that this works as expected: NJMON_INFLUX_API_PREFIX="/metrics/short/" /usr/lbin/nimon_beta -I -s 30 -i <my host> -p <my port> -k -n -S I also sent a pull request to victoriametrics to prevent it from complaining about the extra whitespaces, this is now included in the latest version: https://github.com/VictoriaMetrics/VictoriaMetrics/pull/10096 Thanks!
Awesome, I tested the beta version and found that this works as expected: NJMON_INFLUX_API_PREFIX="/metrics/short/" /usr/lbin/nimon_beta -I -s 30 -i <my host> -p <my port> -k -n -S Thanks!
So this became a Feature Request rather than a bug for njmon. Implemented in version 91 for AIX and Linux. A beta is ready for some testing to confirm the feature. When in nimon mode i.e saving Line Protocol format: Use the new -S flag to switch on TimeStamps in the output to InfluxDB (or other tools via the same API), a socket or pipe or when saving to a file. https://sourceforge.net/projects/nmon/files/njmon_linux_91beta.zip/download https://sourceforge.net/projects/nmon/files/njmon_AIX_91beta.zip/download...
Implemented in version 91 for AIX and Linux. A beta is ready for some testing to confirm the feature. I changed the shell variable name to NJMON_INFLUX_API_PREFIX Example export NJMON_INFLUX_API_PREFIX=/ABC/def https://sourceforge.net/projects/nmon/files/njmon_linux_91beta.zip/download https://sourceforge.net/projects/nmon/files/njmon_AIX_91beta.zip/download Also implemented the InfluxDB timestamps using the -S flag.
I think changing that would confuse most users.
Excellent feedback. Sorry about the 6 year delay!!
Done in version 16s
This features means breaking the InfluxDB API. This is very Victoriametrics specific, so I suggest this is handled but a shell script variable. something like NJMON_HTTP_PREFIX For example: export NJMON_HTTP_PREFIX=/some/random/text then start nimon. Should be in the next release for AIX and Linux.
Hi Nowa, Removing the three spaces - rejected: Influxdata created Line Protocol and implemented it for InfluxDB. nimon output via a socket works perfectly with InfluxDB and has since 2018. I found via experiments that InfluxDB requires whitespace after the statistics (as a terminator for the statistics) and that three spaces work best. From my memory, other numbers of spaces were rejected by InfluxDB. If nimon output tested with InfluxDB is confusing Victoriametrics, then please get Victoriametrics...
According to the folks at victoriametrics it should support writing data without a timestamp. However, nimon appears to be putting two empty spaces after the write string which throws off the timestamp detection and leads to victoriametrics treating the whitespace as the timestamp. Looking at the code I see that this is indeed the case on line 495: output_char += sprintf(&output[output_char], " \n"); We thus have one bug/issue and possibly one feature request: Problem: Extra whitespaces confuse victoriametrics...
For the paper trail, reported to victoriametrics here: https://github.com/VictoriaMetrics/VictoriaMetrics/issues/10049
Thanks for the extensive reply, I'll open a bug report at Victoriametrics with a request to support inferring the timestamp from the current time. You are requesting the data gets send to InfluxDB AND to a local file with timestamps. This is an unexpected combination. I will have to check the code to see what is does - that might depend on order of the parameters. That is never going to work. I figured this is a somewhat unexpected/hacky combination of parameters. It does "work" though, meaning that...
The command parameters: nimon -I -s 30 -i <myinflux> -p <myport> ** should connect InfluxDB but not send timestamps. This is deliberate and by design. This is perfectly legal line protocol as InfluxDB documents it will add the timestamp itself for the time at which the data was received. See https://docs.influxdata.com/influxdb/v1/write_protocols/line_protocol_tutorial/ It states </myport></myinflux>"The timestamp is optional in line protocol. If you do not specify a timestamp for your data point...
nimon: support for writing to influx with extra http.prefix
nimon AIX7-90: missing timestamps in influx output
topaschart cut error
Improved the documentation.
Typo in Warning Text
Fixed in the code. Will appear in nmon16s but no dates for release yet.
njmon hits "invalid field format" writing to InfluxDB v2 due to missing fields for "swaps" data
Sorry, for the delay, this will be working in the next version = v91. The code did not cope with /procs/swaps file existing but empty.
Minor modification of makefile to adapt it to Debian distribution
Request to support LoongArch ISA
Typo in Warning Text
Aslso thank you for making topaschart, its output is helpful for investigating issues that happened in the past.
I don't know how I overlooked the bold type in the page you referenced, https://nmon.sourceforge.io/pmwiki.php?n=Site.TOPASchart, however I did. As I mentioned above, I don't think I am the first person to fall victim to trying to pump the binary file in, so it really may not be overkill to check for an reject binary files. Since this was our first time using this, I have created some internal documentation on using this so for my team this hopefully won't be a problem again.
File deleted. I don't consider nmon files as a security problem - it is just performance data. But sorry if it caused you to worry. I think the topaschart web pages explains the process in sufficient detail. See https://nmon.sourceforge.io/pmwiki.php?n=Site.TOPASchart I cleaned it up a little (corrected the file name extensions) and put the topasout -a in bold. I will fix the version number on the next update. Thanks for your ideas above but I think that is overkill. Thank you for using topascha...
As an aside, I think that topas chart v7 might be identifying itself as version 5 insteady of version 7 based on "export topaschart_version=5"
Okay based on your post I think the problems are user errors based on me not tripping the usage information or finding documentation making it clear as to how to use the program. I was unfortunetally running topas chart directly on the topasrec outputted .topas file not knowing I needed to do a topasout -a yourfile.topas to create a yourfile.topas.csv file. Base on this newfound knowledge when I converted the file on my aix box using topasout and run on the yourfile.topas.out it not suprising works...
Please remove this attachement from this case. I securely sent it to you, so that I didn't have to sanitize it for public view.
OK I ran the topasout -a yourfile.topas and the topaschart yourfile.topas.csv yourfile.html and it worked fine and the .html file displays the graphs correctly. Attached. I did this on AIX 7.2.5. Long shot - what does: which cut return? I am thinking that your $PATH is using open source (Linux) cut command.
Well it might be installed but we are not supposed to make the box do anything other than backup and set up printers. I will followup with the vendor on if we can start running collections that way as well, as the vendor is telling us it is not there software and it is either our disks or something else that we need to look into. hence me trying to analyze the topas files. I just securely sent you an example file. Additional Details. while the script still does not run correctly when I comment out...
nmon is a default install with AIX and has been for more than a decade. So I have no idea how you are running AIX with no nmon install. Is this some ancient AIX level - thstmight explain the problem? As topaschart was working when released, the problem might be a new format with new AIX versions. Or you have mangled the file, sorry :-) Have you more than one problem file? Either way can you send me the topas file with the issues Cheers, nigelargriffiths@hotmail.com
topaschart cut error
Addendum Concerning 1a, additional examples: $ uname -p | sed 's/ppc64le/POWER/' | sed 's/x86_64/X86/' Intel(R) Core(TM) i7-7700 CPU @ 3.60GHz $ uname -p | sed 's/ppc64le/POWER/' | sed 's/x86_64/X86/' AMD Ryzen 5 3600 6-Core Processor $ uname -p | sed 's/ppc64le/POWER/' | sed 's/x86_64/X86/' Intel(R) Xeon(R) CPU E3-1260L v5 @ 2.90GHz
Thanks a lot!!!!! It seems to work :) (I did just an initial test, I'll start using it actively once my Gentoo Linux distro makes the new 16p version available) Some remarks (nothing important, just FYI): 1) Compiling 1a) Variable "HW" of your "makefile": The line "HW=$(shell uname -p | sed 's/ppc64le/POWER/' | sed 's/x86_64/X86/')" returns the following on my notebook (and similar stuff on my servers): $ uname -p | sed 's/ppc64le/POWER/' | sed 's/x86_64/X86/' AMD Ryzen 5 5600H with Radeon Graphics...
dot (.) hotkey doesn't work when displaying disk groups ("g" hotkey when started with -g auto)
Feature added in nmon for Linux version 16q
Parameter to make values of some metrics stick to a certain "unit" (e.g. KB/MB)?
Feature added and can be found in nmon version 16p.
NMON 16n support for Linux on Z - s390x
Z users will need to compile nmon for their specific Linux version. The pre-req for a compile is very simple: Latest GCC C compiler. Make ncurses library Single source file compiles in a few seconds
Sorry for neglecting this report. I do not have access to a mainframe and my IBM friends on the team seem to have moved elsewhere. Delighted if you can compile for RHEL and/or SLES - both seem popular on Z. I will upload to the Sourceforge download list and include a "grateful thanks" note. Please confirm the name and/r company reference you would prefer. Cheers, Nigel