Comments (7)
Hello!
The insights you have made about the files being wrong are completely correct. The version of Leo you pull from github is only compatible with Ubuntu and CentOS. However, we have been working on adding Illumos and Freebsd support. The file nad.js is looking for the files that hold the metrics, however the files shown pertain to the Linux OSs. In order to fix this error you must go into nad.js (which can be accessed via cd leo/components) and write in the correct file names (cpu.elf, fs.elf, if.sh, sdinfo.sh, vminfo.sh).
https://github.com/circonus-labs/leo/blob/master/components/nad.js#L68
The link above shows you where in nad the changes need to be made
On Aug 6, 2015, at 1:48 PM, getboundless [email protected] wrote:
Hello,
I'm encountering an error when attempting to run leo to configure a nad install on smartos. We've installed nad and it appears to be running correctly as we can connect to it via our cironcus account and see all relevant information. See below for information related to the error.
Environment: smartos
nad installed via:
- "wget"
- "unzip"
- "gmake install-illumos"
leo installed via:
- "wget"
- "unzip"
- "npm install"
Error:
[root@example /home/admin/circonus/leo-master]# bin/circonus-setupevents.js:85
throw er; // Unhandled 'error' event
^
Error: spawn /opt/circonus/etc/node-agent.d/cpu.sh ENOENT
at exports._errnoException (util.js:746:11)
at Process.ChildProcess._handle.onexit (child_process.js:1046:32)
at child_process.js:1137:20
at process._tickCallback (node.js:355:11)Editing "components/nad.js" and re-running, I can output the paths and see its looking for:
/opt/circonus/etc/node-agent.d/cpu.sh
/opt/circonus/etc/node-agent.d/disk.sh
/opt/circonus/etc/node-agent.d/fs.elf
/opt/circonus/etc/node-agent.d/if.sh
/opt/circonus/etc/node-agent.d/vm.shLooking at the install location for nad I can see "cpu.sh", "disk.sh" & "vm.sh" do not exist here:
[root@example /home/admin/circonus/leo-master]# ll /opt/circonus/etc/node-agent.d/
total 25
lrwxrwxrwx 1 root root 18 Aug 5 15:52 aggcpu.elf -> illumos/aggcpu.elf*
drwxr-xr-x 2 root root 13 Jul 29 18:15 common/
lrwxrwxrwx 1 root root 15 Aug 5 15:52 cpu.elf -> illumos/cpu.elf*
drwxr-xr-x 2 root root 3 Jul 29 18:15 example/
drwxr-xr-x 3 root root 9 Jul 29 18:15 freebsd/
lrwxrwxrwx 1 root root 14 Aug 5 15:52 fs.elf -> illumos/fs.elf*
drwxr-xr-x 2 root root 3 Jul 29 18:15 haproxy/
lrwxrwxrwx 1 root root 13 Aug 5 15:52 if.sh -> illumos/if.sh*
drwxr-xr-x 4 root root 21 Aug 5 15:52 illumos/
drwxr-xr-x 3 root root 11 Jul 29 18:15 linux/
drwxr-xr-x 2 root root 5 Jul 29 18:15 ohai/
drwxr-xr-x 3 root root 7 Jul 29 18:15 openbsd/
drwxr-xr-x 2 root root 3 Jul 29 18:15 pf/
drwxr-xr-x 2 root root 3 Jul 29 18:15 postgresql/
lrwxrwxrwx 1 root root 17 Aug 5 15:52 sdinfo.sh -> illumos/sdinfo.sh*
drwxr-xr-x 2 root root 4 Jul 29 18:15 smartos/
lrwxrwxrwx 1 root root 14 Aug 5 15:52 smf.sh -> illumos/smf.sh*
lrwxrwxrwx 1 root root 14 Aug 5 15:52 tcp.sh -> illumos/tcp.sh*
lrwxrwxrwx 1 root root 14 Aug 5 15:52 udp.sh -> illumos/udp.sh*
lrwxrwxrwx 1 root root 17 Aug 5 15:52 vminfo.sh -> illumos/vminfo.sh*
lrwxrwxrwx 1 root root 15 Aug 5 15:52 vnic.sh -> illumos/vnic.sh*
drwxr-xr-x 3 root root 3 Jul 29 18:15 windows/
lrwxrwxrwx 1 root root 18 Aug 5 15:52 zfsinfo.sh -> illumos/zfsinfo.sh*
lrwxrwxrwx 1 root root 19 Aug 5 15:52 zone_vfs.sh -> illumos/zone_vfs.sh*
lrwxrwxrwx 1 root root 15 Aug 5 15:52 zpool.sh -> common/zpool.sh*
lrwxrwxrwx 1 root root 19 Aug 5 15:52 zpoolio.elf -> illumos/zpoolio.elf*Do I need to modify the config at "components/nad.js" to something specific to smartos? If so what would need to be changed?
Thanks
—
Reply to this email directly or view it on GitHub #8.
from leo.
Hello,
I've made the changes suggested, and the process completes without any errors now. One other related item though -
After leo completes and we review the changes in our circonus account, we can see the check, the worksheet and the graphs have all been created correctly, but the only metrics that are being monitored are:
- cpu
idle
steal - cpu`kernel
- cpu`user
- cpu`wait_io
No metrics have been created related to disk, memory, file system or network. I'm assuming this is another issue related to the differences between the current offering for Linux vs SmartOs?
Wanted to check though and see if it's something I can fix?
Thanks
from leo.
Yes, most of the metrics are named differently in SmartOS, and the original names are set for Linux metrics. I have created a file that has the changed names and will place it in the additional components folder so you may access it
from leo.
Btw the file is named Illumos-nad.js
Hope this helps!
from leo.
Thanks for the updated file. Upon initial review, only the cpu metrics are matched. Looking at the metrics exposed by the nad instance I can see that we can change the below to correctly match.
sdinfo`sd:0:sd0:`nread => sdinfo`sd:0:sd0:nread
sdinfo`sd:0:sd0:`nwritten => sdinfo`sd:0:sd0:nwritten
sdinfo`sd:0:sd0:`reads => sdinfo`sd:0:sd0:reads
sdinfo`sd:0:sd0:`writes => sdinfo`sd:0:sd0:writes
And that these metrics from the Illumos-nad.js config file are not available via the nad instance on the box:
vminfo`memory`total
vminfo`memory`used
vminfo`swap`free
vminfo`swap`used
if`eth0`in_bytes
if`eth0`in_errors
if`eth0`out_bytes
if`eth0`out_errors
zfs`/`used_percent
fs`/`df_used_percent
Not sure if this is a configuration issue with the nad instance (not all the checks are running) a issue with leo, or a issue with the metrics being looked for and the difference between linux & solaris.
I've attached a link to a file with all the metrics I'm seeing from the nad instance. I've confirmed this list in both the circonus interface (create nad check) and when using the detailed setup for leo.
https://s3-us-west-1.amazonaws.com/files-for-leo/smartos-circonus-metrics
Thanks -
from leo.
Most of the errors had to do with the difference between linux and solaris and the names still not being correct. However, for Network and File Systems, sometimes the metrics are specific for each OS leo in installed on. Unfortunately leo does not have to ability to pull those specifc names yet, so you may either enter them in manually, wait to add them on the UI once the check has been created, or not have them. I have updated Illumos-nad.js so that it should be compatible with your server. The only exception is the set File System metrics as their names are specific to your computer. As for not receiving any vminfo metrics. This was due to an error on nad's part, but has now been fixed. If you pull the latest version of nad and leo everything should work properly! Thank you for your feedback and patience. It is very appreciated!
from leo.
Thanks for the update!
I've re-installed nad & leo with the changes and initially everything looks good! All graphs were created and the checks are correct, with the exception of the file system (as you outlined), and one small change needed in the Illumos-nad.js file in the repo:
Line 31 -
vminfo`unix:0:vminfo:fremem => vminfo`unix:0:vminfo:freemem
Once again, thanks for all the help.
from leo.
Related Issues (6)
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from leo.