[INFO] Show off your Weathermaps.

Support questions about the Network Weather Map plugin

Moderators: Developers, Moderators

Post Reply
netniV
Cacti Guru User
Posts: 3440
Joined: Sun Aug 27, 2017 12:05 am

Re: [INFO] Show off your Weathermaps.

Post by netniV »

ds20prefecture wrote:My ancient 3560 switches using NINK for interface status. I set the 0 0 range to black to show interfaces with zero traffic as "disconnected" - connected switches show bandwidth. Weathermap is the cleverest use of Cacti I've seen! Thanks Howie.
Now this would be useful for me so I can identify ports that should be shutdown!
Cacti Developer & Release Manager
The Cacti Group

Director
BV IT Solutions Ltd

+--------------------------------------------------------------------------+

Cacti Resources:
Cacti Website (including releases)
Cacti Issues
Cacti Development Releases
Cacti Development Documentation
ethanzhu
Posts: 1
Joined: Fri Feb 09, 2018 2:26 am

Re:

Post by ethanzhu »

BorisL wrote:Sample Datacenter weathermap.
Links between routers (actual interface names, rrd, etc) are found automaticall using simple pre-plugin.

User write

Code: Select all

LINK nodeXXX-nodeYYY
        NODES nodeXXX nodeYYY
Everything else is done using TEMPLATES and plugin mentioned above.
how to display % on link?
User avatar
Pucho
Cacti User
Posts: 185
Joined: Wed Jul 20, 2016 8:00 pm

Re: Re:

Post by Pucho »

ethanzhu wrote:
BorisL wrote:Sample Datacenter weathermap.
Links between routers (actual interface names, rrd, etc) are found automaticall using simple pre-plugin.

User write

Code: Select all

LINK nodeXXX-nodeYYY
        NODES nodeXXX nodeYYY
Everything else is done using TEMPLATES and plugin mentioned above.
how to display % on link?
BWLABEL
Cacti - 1.2.15
Poller Type - Spine
Weathermap 0.98a
Server Info - Linux 3.10.0 - Centos 7
Web Server - Apache/2.4.6 PHP 5.4.16
MySQL - 5.5 ;RRDTool - 1.4.8 ;SNMP - 5.7.2
Religion - Anti forum pets
anmomin1
Cacti User
Posts: 63
Joined: Mon May 29, 2017 4:14 pm

Re: [INFO] Show off your Weathermaps.

Post by anmomin1 »

HI,

I am still trying to figure this spiral and round graphic..
I followed instructions provide .,..
If I need to get 100 routers around the cloud..

according to what you've mentioned:
angle= (360/number-of-things) * number-of-this-thing
X = center_x + distance*cos(angle)
Y = center_y - distance*sin(angle)


360/100*number-of-this-thing (what is number of this thing)

I was able to get the idea with below code:
# TEMPLATE-only NODEs:
NODE DEFAULT
MAXVALUE 100


# TEMPLATE-only LINKs:
LINK DEFAULT
BANDWIDTH 100M


# regular NODEs:
NODE c1
LABEL c1
POSITION 337 283

NODE rrr2
LABEL rrr2
POSITION c1 385r200

NODE rrr4
LABEL Node
POSITION c1 90r200

NODE rrr1
LABEL rrrr1
POSITION c1 45r200

NODE rrr3
LABEL rrr3
POSITION c1 360r200

NODE node03836
LABEL Node
POSITION c1 180r200

NODE node03979
LABEL Node
POSITION c1 270r200


# regular LINKs:
LINK c1-rrr3
NODES c1 rrr3



# That's All Folks!


But I need to guess angle value for next router. I thought with your calculation I can just add that number to angel for next node.

Also about link you did some logic if you can please explain that would be great.

Thanks.
Attachments
circular-wm.png
circular-wm.png (15.51 KiB) Viewed 11858 times
anmomin1
Cacti User
Posts: 63
Joined: Mon May 29, 2017 4:14 pm

Re:

Post by anmomin1 »

Hi Dionvdc
hoping you are still following this thread...or anyone you have got spiral some nice spiral/circular graph..
I got able to get graph but wonder how I get link's label shows data better... like Dionvdc got..

following in portion of my config:
NODE rrr1
LABEL rrr1
ICON images/router_up.gif
POSITION VPLS10 90r300

NODE rrr1-1
LABEL rrr1-1
ICON images/router_up.gif
POSITION VPLS10 98r300

NODE rrr1-2
LABEL rrr1-2
ICON images/router_up.gif
POSITION VPLS10 106r300

NODE rrr1-3
LABEL rrr1-3
ICON images/router_up.gif
POSITION VPLS10 114r300

NODE rrr1-4
LABEL rrr1-4
ICON images/router_up.gif
POSITION VPLS10 122r300
LINK VPLS10-rrr1
NODES VPLS10:90r65 rrr1

LINK VPLS10-rrr1-1
NODES VPLS10:98r65 rrr1-1

LINK VPLS10-rrr1-2
NODES VPLS10:106r65 rrr1-2

LINK VPLS10-rrr1-3
NODES VPLS10:114r65 rrr1-3

LINK VPLS10-rrr1-4
NODES VPLS10:122r65 rrr1-4


dionvdc wrote:My turn with images that represent one of our storage layout.
Setup used: cacti 0.8.7e, weather-map 0.97, monitor and thold.

Link have an infourl and overlib as do the switch endpoints, some links have an in/out infourl and overlib defined. Set link_bulge is used.
The monitor is to be used as an animated weathermap infourl/ overlib, but this is still an WIP.

The first two image configfiles are made with an xls file using previous posted file for the dashboard creation as example. The last two where created by hand.
The config (especially the radial images) files contain almost no Configuration Directives except many set hint values as almost everything is templated and defined in an include files.

The last two images use the same include file mentioned above for templates and a seperate one for the base layout. The base switches have an overlib and infourl to the radial images
Attachments
wm-spiral.png
wm-spiral.png (466.59 KiB) Viewed 11847 times
dionvdc2
Posts: 3
Joined: Thu Feb 21, 2019 8:55 am

Re: [INFO] Show off your Weathermaps.

Post by dionvdc2 »

Hi anmomin1

Old account seems unrecoverable so I made a new one ;).

Stubbled on your request purely be accident as I haven't touched cacti or networkmap in ages.
Seems you got the circular bit figured out already, or do you still require help?

If its the latter, I might still have my old files which produced the config for those circles.
I'll have a look later on when I'm home.
If I find them ill share them.

So the labels in the routericons named rrr* you can push those outwards with an offset.
https://www.network-weathermap.com/manu ... ABELOFFSET
You need to calculate the position though, I used a modified xls from the earlier pages (before my initial post) to make that easier.

BWSTYLE lets you adjust the BW numbers in the link too either be horizontal (classic and the default what you have) or angled (angled what I did in include files within template directives if memory serves me right. No need for calculations here as the labels should follow the links angle.
dionvdc2
Posts: 3
Joined: Thu Feb 21, 2019 8:55 am

Re: [INFO] Show off your Weathermaps.

Post by dionvdc2 »

So found my old stuff.

Didn't find the time to cleanup to just answer you question so I'll post it all.
Im sorry for the wall of text and codeblocks
Note these files are 8/9 years old, perhaps stuff is incompatible with your version.
Note the files are geared for my understanding and a customers environment, if something is unclear I'm ready to answer to the extend I am able too but dont have access to this site anymore nor a working cacti/weathermap instance.

So to get the pictures as posted in viewtopic.php?p=189850#p189850 I use
  • 1) a global config which is included in each mapconfig
  • 2) a mapconfig for each map
  • 3) an xls sheet to built the map config
As said before I used the template directive a lot and nested them as well.

So lets start with the global config file, customer_global.conf. It has no actual nodes or links, just predefined stuff I might need in map files;

Code: Select all

WIDTH 1100
HEIGHT 700
HTMLSTYLE overlib
FONTDEFINE 99 Tahoma.ttf 7
FONTDEFINE 98 Tahoma.ttf 8
FONTDEFINE 89 Arial.ttf 8
TIMEFONT 99
TITLEFONT 99
KEYFONT 99
SCALE DEFAULT 0 30   0 255 0   255 255 0  
SCALE DEFAULT 30 55   255 255 0   255 128 0  
SCALE DEFAULT 55 100   255 128 0   255 0 0
KEYPOS DEFAULT 0 0 Traffic Load
KEYSTYLE DEFAULT horizontal
SCALE FCPORT 0 0  128 128 128 unknown
SCALE FCPORT 1 1  0 255 0 online
SCALE FCPORT 2 2  180 80 0 offline
SCALE FCPORT 3 3  0 0 255 testing
SCALE FCPORT 4 4  255 0 0 faulty
SET link_bulge 1
SET screenshot_mode 0
SET customer_img_dir images/_CUSTOMER
SET rra_dir D:/WWW/cacti/rra
# TEMPLATE-only NODEs:
NODE DEF_ZW
	LABEL {node:this:name}
	LABELFONT 98
	LABELBGCOLOR none
	LABELOUTLINECOLOR none
	OVERLIBWIDTH 381
	OVERLIBHEIGHT 166
	OVERLIBCAPTION Details for {node:this:name}
	MAXVALUE 100
	USESCALE none

NODE DEV
	TEMPLATE DEF_ZW
	ICON {map:customer_img_dir}/{node:this:host_icon}.png

NODE LOGO
	ICON 120 58 {map:customer_img_dir}/{node:this:host_icon}.png
	LABELOFFSET 0 -20
	LABELFONTCOLOR 255 255 255

NODE DEV-monitor
	TEMPLATE DEF_ZW
	TARGET cactimonitor:{node:this:host_id}
	ICON {map:customer_img_dir}/{node:this:host_icon}_{node:this:state}.png

NODE DEV-monitor-single
	TEMPLATE DEV-monitor
	INFOURL /cacti/graph.php?rra_id=all&local_graph_id={node:this:graph_id}
	OVERLIBGRAPH /cacti/graph_image.php?local_graph_id={node:this:graph_id}&rra_id=5&graph_nolegend=true&graph_height=100&graph_width=300

NODE DEV-monitor-singleWM
	TEMPLATE DEV-monitor
	OVERLIBWIDTH 249
	OVERLIBHEIGHT 247
	INFOURL /cacti/plugins/weathermap/weathermap-cacti-plugin.php?action=viewmap&id={node:this:weather_id}
	OVERLIBGRAPH /cacti/plugins/weathermap/weathermap-cacti-plugin.php?action=viewthumb&id={node:this:weather_id}

NODE FCPORT
	USESCALE FCPORT
	LABELOUTLINECOLOR 0 0 0
	LABELFONTCOLOR contrast
	INFOURL /cacti/graph.php?rra_id=all&local_graph_id={node:this:graph_id}
	OVERLIBGRAPH /cacti/graph_image.php?local_graph_id={node:this:graph_id}&rra_id=5&graph_nolegend=true&graph_height=100&graph_width=300
	TARGET gauge:{map:rra_dir}/{node:this:host_id}/{node:this:state_rrd_id}.rrd:operstate:-

# TEMPLATE-only LINKs:
LINK DEF_ZW
	WIDTH 8
	BWFONT 99
	BWSTYLE angled
	BWOUTLINECOLOR none
	BWBOXCOLOR none
	OUTLINECOLOR none
	OVERLIBWIDTH 381
	OVERLIBHEIGHT 166
	OVERLIBCAPTION Details for {link:this:name}

LINK ETH-single
	TEMPLATE DEF_ZW
	BANDWIDTH 1G
	INFOURL /cacti/graph.php?rra_id=all&local_graph_id={link:this:graph_id}
	OVERLIBGRAPH /cacti/graph_image.php?local_graph_id={link:this:graph_id}&rra_id=5&graph_nolegend=true&graph_height=100&graph_width=300
	TARGET {map:rra_dir}/{link:this:host_id}/{link:this:rrd_id}.rrd:traffic_out:traffic_in

LINK FC-single
	TEMPLATE DEF_ZW
	INFOURL /cacti/graph.php?rra_id=all&local_graph_id={link:this:graph_id}
	OVERLIBGRAPH /cacti/graph_image.php?local_graph_id={link:this:graph_id}&rra_id=5&graph_nolegend=true&graph_height=100&graph_width=300
	TARGET gauge:{map:rra_dir}/{link:this:host_id}/{link:this:rrd_id}.rrd:swFCPortRxWords:swFCPortTxWords

LINK FC4G-single
	TEMPLATE FC-single
	BANDWIDTH 100M

LINK FC2G-single
	TEMPLATE FC-single
	BANDWIDTH 50M

LINK FC-dual
	TEMPLATE DEF_ZW
	OUTINFOURL /cacti/graph.php?action=view&local_graph_id={link:this:out_graph_id}&rra_id=all
	ININFOURL /cacti/graph.php?action=view&local_graph_id={link:this:in_graph_id}&rra_id=all
	OUTOVERLIBGRAPH /cacti/graph_image.php?local_graph_id={link:this:out_graph_id}&rra_id=5&graph_nolegend=true&graph_height=100&graph_width=300
	INOVERLIBGRAPH /cacti/graph_image.php?local_graph_id={link:this:in_graph_id}&rra_id=5&graph_nolegend=true&graph_height=100&graph_width=300
	TARGET gauge:{map:rra_dir}/{link:this:out_host_id}/{link:this:out_rrd_id}.rrd:-:swFCPortTxWords gauge:{map:rra_dir}/{link:this:in_host_id}/{link:this:in_rrd_id}.rrd:swFCPortTxWords:-

LINK FC2G-dual
	TEMPLATE FC-dual
	BANDWIDTH 100M

LINK FC4G-dual
	TEMPLATE FC-dual
	BANDWIDTH 50M

# logo node
NODE CUSTOMER
	TEMPLATE LOGO
	POSITION 543 35
	SET host_icon logo
So next is a map file for which I dont have an actual copy, so I generated a new one with a 12 port FC switch with the xls sheets and already spotted more directives, o well

Code: Select all

# Generated by Cacti Weathermap.xls
INCLUDE customer_global.conf
TITLE Customer 12_PORT_SW
WIDTH 433
HEIGHT 430
TIMEPOS 5 427
KEYSTYLE DEFAULT horizontal 320 
KEYPOS FCPORT 350 0 Port State
KEYSTYLE FCPORT tags
# End of global section
# regular NODEs:

NODE 12_port_sw
        TEMPLATE DEV-monitor
        LABELOFFSET 0 -10
        POSITION 216 240
        SET host_id 15
        SET host_icon B300
NODE 12_port_sw_1
        TEMPLATE FCPORT
        LABEL 1
        POSITION 12_port_sw 15r180
        SET host_id 15
        SET state_rrd_id 1864
        SET graph_id 425
NODE 12_port_sw_2
        TEMPLATE FCPORT
        LABEL 2
        POSITION 12_port_sw 45r180
        SET host_id 15
        SET state_rrd_id 1865
        SET graph_id 426
NODE 12_port_sw_3
        TEMPLATE FCPORT
        LABEL 3
        POSITION 12_port_sw 75r180
        SET host_id 15
        SET state_rrd_id 1866
        SET graph_id 427
NODE 12_port_sw_4
        TEMPLATE FCPORT
        LABEL 4
        POSITION 12_port_sw 105r180
        SET host_id 15
        SET state_rrd_id 1867
        SET graph_id 428
NODE 12_port_sw_5
        TEMPLATE FCPORT
        LABEL 5
        POSITION 12_port_sw 135r180
        SET host_id 15
        SET state_rrd_id 1868
        SET graph_id 429
NODE 12_port_sw_6
        TEMPLATE FCPORT
        LABEL 6
        POSITION 12_port_sw 165r180
        SET host_id 15
        SET state_rrd_id 1869
        SET graph_id 430
NODE 12_port_sw_7
        TEMPLATE FCPORT
        LABEL 7
        POSITION 12_port_sw 195r180
        SET host_id 15
        SET state_rrd_id 1870
        SET graph_id 431
NODE 12_port_sw_8
        TEMPLATE FCPORT
        LABEL 8
        POSITION 12_port_sw 225r180
        SET host_id 15
        SET state_rrd_id 1871
        SET graph_id 432
NODE 12_port_sw_9
        TEMPLATE FCPORT
        LABEL 9
        POSITION 12_port_sw 255r180
        SET host_id 15
        SET state_rrd_id 1872
        SET graph_id 433
NODE 12_port_sw_10
        TEMPLATE FCPORT
        LABEL 10
        POSITION 12_port_sw 285r180
        SET host_id 15
        SET state_rrd_id 1873
        SET graph_id 434
NODE 12_port_sw_11
        TEMPLATE FCPORT
        LABEL 11
        POSITION 12_port_sw 315r180
        SET host_id 15
        SET state_rrd_id 1874
        SET graph_id 435
NODE 12_port_sw_12
        TEMPLATE FCPORT
        LABEL 12
        POSITION 12_port_sw 345r180
        SET host_id 15
        SET state_rrd_id 1875
        SET graph_id 436
LINK 12_port_sw-12_port_sw_1
        TEMPLATE FC4G-single
        NODES 12_port_sw:15r65 12_port_sw_1
        SET rrd_id 494
        SET graph_id 425
        SET host_id 15
LINK 12_port_sw-12_port_sw_2
        TEMPLATE FC4G-single
        NODES 12_port_sw:45r65 12_port_sw_2
        SET rrd_id 495
        SET graph_id 426
        SET host_id 15
LINK 12_port_sw-12_port_sw_3
        TEMPLATE FC4G-single
        NODES 12_port_sw:75r65 12_port_sw_3
        SET rrd_id 496
        SET graph_id 427
        SET host_id 15
LINK 12_port_sw-12_port_sw_4
        TEMPLATE FC4G-single
        NODES 12_port_sw:105r65 12_port_sw_4
        SET rrd_id 497
        SET graph_id 428
        SET host_id 15
LINK 12_port_sw-12_port_sw_5
        TEMPLATE FC4G-single
        NODES 12_port_sw:135r65 12_port_sw_5
        SET rrd_id 498
        SET graph_id 429
        SET host_id 15
LINK 12_port_sw-12_port_sw_6
        TEMPLATE FC4G-single
        NODES 12_port_sw:165r65 12_port_sw_6
        SET rrd_id 499
        SET graph_id 430
        SET host_id 15
LINK 12_port_sw-12_port_sw_7
        TEMPLATE FC4G-single
        NODES 12_port_sw:195r65 12_port_sw_7
        SET rrd_id 500
        SET graph_id 431
        SET host_id 15
LINK 12_port_sw-12_port_sw_8
        TEMPLATE FC4G-single
        NODES 12_port_sw:225r65 12_port_sw_8
        SET rrd_id 501
        SET graph_id 432
        SET host_id 15
LINK 12_port_sw-12_port_sw_9
        TEMPLATE FC4G-single
        NODES 12_port_sw:255r65 12_port_sw_9
        SET rrd_id 502
        SET graph_id 433
        SET host_id 15
LINK 12_port_sw-12_port_sw_10
        TEMPLATE FC4G-single
        NODES 12_port_sw:285r65 12_port_sw_10
        SET rrd_id 503
        SET graph_id 434
        SET host_id 15
LINK 12_port_sw-12_port_sw_11
        TEMPLATE FC4G-single
        NODES 12_port_sw:315r65 12_port_sw_11
        SET rrd_id 504
        SET graph_id 435
        SET host_id 15
LINK 12_port_sw-12_port_sw_12
        TEMPLATE FC4G-single
        NODES 12_port_sw:345r65 12_port_sw_12
        SET rrd_id 505
        SET graph_id 436
        SET host_id 15

So lets look at 1 node being the switch, the first switch port and the link between them

Code: Select all

NODE 12_port_sw
        TEMPLATE DEV-monitor
        LABELOFFSET 0 -10
        POSITION 216 240
        SET host_id 15
        SET host_icon B300
NODE 12_port_sw_1
        TEMPLATE FCPORT
        LABEL 1
        POSITION 12_port_sw 15r180
        SET host_id 15
        SET state_rrd_id 1864
        SET graph_id 425

LINK 12_port_sw-12_port_sw_1
        TEMPLATE FC4G-single
        NODES 12_port_sw:15r65 12_port_sw_1
        SET rrd_id 494
        SET graph_id 425
        SET host_id 15
you see the templates
  • 1) TEMPLATE DEV-monitor
  • 2) TEMPLATE FCPORT
  • 3) TEMPLATE FC4G-single
Lets have a look at DEV-monitor in the global config, more nested templates is rinse repeat

Code: Select all

NODE DEV-monitor
	TEMPLATE DEF_ZW
	TARGET cactimonitor:{node:this:host_id}
	ICON {map:customer_img_dir}/{node:this:host_icon}_{node:this:state}.png
##which is uses TEMPLATE DEF_ZW
NODE DEF_ZW
	LABEL {node:this:name}
	LABELFONT 98
	LABELBGCOLOR none
	LABELOUTLINECOLOR none
	OVERLIBWIDTH 381
	OVERLIBHEIGHT 166
	OVERLIBCAPTION Details for {node:this:name}
	MAXVALUE 100
	USESCALE none

Take the above templates and applied to the first node (being the switch) 12_port_sw

Code: Select all

NODE 12_port_sw
        TEMPLATE DEV-monitor
        LABELOFFSET 0 -10
        POSITION 216 240
        SET host_id 15
        SET host_icon B300
Is the same when I created it as

Code: Select all

NODE 12_port_sw
   LABEL {node:this:name}
   LABELFONT 98
   LABELBGCOLOR none
   LABELOUTLINECOLOR none
   OVERLIBWIDTH 381
   OVERLIBHEIGHT 166
   OVERLIBCAPTION Details for {node:this:name}
   MAXVALUE 100
   USESCALE none
        LABELOFFSET 0 -10
        POSITION 216 240
        SET host_id 15
        SET host_icon B300
   TARGET cactimonitor:{node:this:host_id}
   ICON {map:customer_img_dir}/{node:this:host_icon}_{node:this:state}.png
But since I try/tried to have it readable and reusable (again xls) I did not.

Some may have noticed the radial position and (center) offset already in the codeblocks.
Last edited by dionvdc2 on Thu Feb 21, 2019 1:51 pm, edited 1 time in total.
dionvdc2
Posts: 3
Joined: Thu Feb 21, 2019 8:55 am

Re: [INFO] Show off your Weathermaps.

Post by dionvdc2 »

Now this is the part I use excel.
The file is attached. Use at your own risk and feel free to modify it.
Credits to cjlove72. I used his example from viewtopic.php?p=173169#p173169

I modified his to suit my needs.
Some of his original explinations (see his post) do no apply (anymore) I didn't verify that

The switches table holds all info I needed.
If you are only interested in the redial positioning just look at the formulas in column H and I.

Code: Select all

=VAST(360/64*B3-(360/128);0;0) & "r180" "####is the node position for example and in dutch, /64 because its a 64 port switch /128 as I didn't want it to start on 0 degrees r for radial 180 pxls offset
Link postion is same formula with "r65" attached, but adjust as you see fit in your env.

I prepopulated said sheet with ALL info need on ALL switches(cacti ids, templates, names etc.) and use that as source as i found that to be the quickest for me.

Next is the radialtable, this takes a subset of info from the switches table, only the first 2 (or 3 if you prefer) columns with copy past method.

If the radialtable is (partialy) populated the RadialConfigDefinitions is where you find the config for you particular weathermap.
Its a bit messy as it expect 64 ports and anything less either gives an error or empty/incomplete fields.

Columns of interest are A and F to the point of fields with an error, empty/incomplete.

Drop those in you map config and you should have a radial map .
Attachments
Cacti Weathermap v4 - anon.xls
(305 KiB) Downloaded 268 times
kevinmorales
Posts: 13
Joined: Wed Mar 13, 2013 10:57 am
Location: Nicaragua

Re: [INFO] Show off your Weathermaps.

Post by kevinmorales »

Hi, It is possible to use a Gif Icon in Weathermap?. I want to make my Maps more animated,..

thanks!
Kevin Morales
anmomin1
Cacti User
Posts: 63
Joined: Mon May 29, 2017 4:14 pm

Re: [INFO] Show off your Weathermaps.

Post by anmomin1 »

LdubSham wrote: Thu Aug 06, 2015 10:21 am Hello,

As we have been so inspired by other peoples work on this forum and this thread in particular I thought we would share a few of our weathermaps to hopefully inspire a few others:

Here are two we use to monitor a Cisco 6509-E and an Cisco ASR-1004 we have in the core of our network. Features include:

Cisco 6500:
Interface link status on all ports
Interface traffic – via hovering over each port
Backplane traffic on each blade for each channel in and out – hover graphs
Power usage and power supply redundancy state
Current Threshold Alerts – Pie charts for Backplane Alerts and if any blades have gone offline.
BGP Peer states – including number of flaps, uptime and peer address
Port channel traffic graphs – including hover graphs
Launching PuTTy to host via clickable icon
Cacti Edit host clickable icon
24 hour video playback of the weathermap with previous 30 days archived.
Links to our Netflow frontend for deep packet inspection
Current latency via the smokeping graph – clickable to take you to smokeping for that host
Links to relevant traffic weathermaps – London Core and our UK WAN.
Temp, CPU, and OSPF graphs.

ASR-1004
Many of the above including:
NAT Pool and QOS Threshold Pie charts
QFP Processor load


Scripts used that are found on this website include the QoS Class Map Script Server Query which is a brilliant peice of code - although very intensive on our cacti server.
The backplane utilization graphs are a custom script query created by ourselves, likewise we monitor all customer CGNAT pools using a custom script with data scraped from the CLI as the MIBS on the ASR platform do not support this.
Really impressive...
I would love to know how you got ASR and ospf adn BGP graph done...What are you using for netflow?
anmomin1
Cacti User
Posts: 63
Joined: Mon May 29, 2017 4:14 pm

Re:

Post by anmomin1 »

Tybio wrote: Tue Nov 20, 2007 7:41 pm Sure, you can use these Howie.

The one with all the little circles is generated by a script every night out of our Cacti DB. The other two are different views of the same network.
what exactly you are mapping?
are those routing neighbour or routing changes?

Thanks.
anmomin1
Cacti User
Posts: 63
Joined: Mon May 29, 2017 4:14 pm

Re: [INFO] Show off your Weathermaps.

Post by anmomin1 »

dionvdc2 wrote: Thu Feb 21, 2019 12:38 pm So found my old stuff.

Didn't find the time to cleanup to just answer you question so I'll post it all.
Im sorry for the wall of text and codeblocks
Note these files are 8/9 years old, perhaps stuff is incompatible with your version.
Note the files are geared for my understanding and a customers environment, if something is unclear I'm ready to answer to the extend I am able too but dont have access to this site anymore nor a working cacti/weathermap instance.

So to get the pictures as posted in viewtopic.php?p=189850#p189850 I use
  • 1) a global config which is included in each mapconfig
  • 2) a mapconfig for each map
  • 3) an xls sheet to built the map config
As said before I used the template directive a lot and nested them as well.

So lets start with the global config file, customer_global.conf. It has no actual nodes or links, just predefined stuff I might need in map files;

Code: Select all

WIDTH 1100
HEIGHT 700
HTMLSTYLE overlib
FONTDEFINE 99 Tahoma.ttf 7
FONTDEFINE 98 Tahoma.ttf 8
FONTDEFINE 89 Arial.ttf 8
TIMEFONT 99
TITLEFONT 99
KEYFONT 99
SCALE DEFAULT 0 30   0 255 0   255 255 0  
SCALE DEFAULT 30 55   255 255 0   255 128 0  
SCALE DEFAULT 55 100   255 128 0   255 0 0
KEYPOS DEFAULT 0 0 Traffic Load
KEYSTYLE DEFAULT horizontal
SCALE FCPORT 0 0  128 128 128 unknown
SCALE FCPORT 1 1  0 255 0 online
SCALE FCPORT 2 2  180 80 0 offline
SCALE FCPORT 3 3  0 0 255 testing
SCALE FCPORT 4 4  255 0 0 faulty
SET link_bulge 1
SET screenshot_mode 0
SET customer_img_dir images/_CUSTOMER
SET rra_dir D:/WWW/cacti/rra
# TEMPLATE-only NODEs:
NODE DEF_ZW
	LABEL {node:this:name}
	LABELFONT 98
	LABELBGCOLOR none
	LABELOUTLINECOLOR none
	OVERLIBWIDTH 381
	OVERLIBHEIGHT 166
	OVERLIBCAPTION Details for {node:this:name}
	MAXVALUE 100
	USESCALE none

NODE DEV
	TEMPLATE DEF_ZW
	ICON {map:customer_img_dir}/{node:this:host_icon}.png

NODE LOGO
	ICON 120 58 {map:customer_img_dir}/{node:this:host_icon}.png
	LABELOFFSET 0 -20
	LABELFONTCOLOR 255 255 255

NODE DEV-monitor
	TEMPLATE DEF_ZW
	TARGET cactimonitor:{node:this:host_id}
	ICON {map:customer_img_dir}/{node:this:host_icon}_{node:this:state}.png

NODE DEV-monitor-single
	TEMPLATE DEV-monitor
	INFOURL /cacti/graph.php?rra_id=all&local_graph_id={node:this:graph_id}
	OVERLIBGRAPH /cacti/graph_image.php?local_graph_id={node:this:graph_id}&rra_id=5&graph_nolegend=true&graph_height=100&graph_width=300

NODE DEV-monitor-singleWM
	TEMPLATE DEV-monitor
	OVERLIBWIDTH 249
	OVERLIBHEIGHT 247
	INFOURL /cacti/plugins/weathermap/weathermap-cacti-plugin.php?action=viewmap&id={node:this:weather_id}
	OVERLIBGRAPH /cacti/plugins/weathermap/weathermap-cacti-plugin.php?action=viewthumb&id={node:this:weather_id}

NODE FCPORT
	USESCALE FCPORT
	LABELOUTLINECOLOR 0 0 0
	LABELFONTCOLOR contrast
	INFOURL /cacti/graph.php?rra_id=all&local_graph_id={node:this:graph_id}
	OVERLIBGRAPH /cacti/graph_image.php?local_graph_id={node:this:graph_id}&rra_id=5&graph_nolegend=true&graph_height=100&graph_width=300
	TARGET gauge:{map:rra_dir}/{node:this:host_id}/{node:this:state_rrd_id}.rrd:operstate:-

# TEMPLATE-only LINKs:
LINK DEF_ZW
	WIDTH 8
	BWFONT 99
	BWSTYLE angled
	BWOUTLINECOLOR none
	BWBOXCOLOR none
	OUTLINECOLOR none
	OVERLIBWIDTH 381
	OVERLIBHEIGHT 166
	OVERLIBCAPTION Details for {link:this:name}

LINK ETH-single
	TEMPLATE DEF_ZW
	BANDWIDTH 1G
	INFOURL /cacti/graph.php?rra_id=all&local_graph_id={link:this:graph_id}
	OVERLIBGRAPH /cacti/graph_image.php?local_graph_id={link:this:graph_id}&rra_id=5&graph_nolegend=true&graph_height=100&graph_width=300
	TARGET {map:rra_dir}/{link:this:host_id}/{link:this:rrd_id}.rrd:traffic_out:traffic_in

LINK FC-single
	TEMPLATE DEF_ZW
	INFOURL /cacti/graph.php?rra_id=all&local_graph_id={link:this:graph_id}
	OVERLIBGRAPH /cacti/graph_image.php?local_graph_id={link:this:graph_id}&rra_id=5&graph_nolegend=true&graph_height=100&graph_width=300
	TARGET gauge:{map:rra_dir}/{link:this:host_id}/{link:this:rrd_id}.rrd:swFCPortRxWords:swFCPortTxWords

LINK FC4G-single
	TEMPLATE FC-single
	BANDWIDTH 100M

LINK FC2G-single
	TEMPLATE FC-single
	BANDWIDTH 50M

LINK FC-dual
	TEMPLATE DEF_ZW
	OUTINFOURL /cacti/graph.php?action=view&local_graph_id={link:this:out_graph_id}&rra_id=all
	ININFOURL /cacti/graph.php?action=view&local_graph_id={link:this:in_graph_id}&rra_id=all
	OUTOVERLIBGRAPH /cacti/graph_image.php?local_graph_id={link:this:out_graph_id}&rra_id=5&graph_nolegend=true&graph_height=100&graph_width=300
	INOVERLIBGRAPH /cacti/graph_image.php?local_graph_id={link:this:in_graph_id}&rra_id=5&graph_nolegend=true&graph_height=100&graph_width=300
	TARGET gauge:{map:rra_dir}/{link:this:out_host_id}/{link:this:out_rrd_id}.rrd:-:swFCPortTxWords gauge:{map:rra_dir}/{link:this:in_host_id}/{link:this:in_rrd_id}.rrd:swFCPortTxWords:-

LINK FC2G-dual
	TEMPLATE FC-dual
	BANDWIDTH 100M

LINK FC4G-dual
	TEMPLATE FC-dual
	BANDWIDTH 50M

# logo node
NODE CUSTOMER
	TEMPLATE LOGO
	POSITION 543 35
	SET host_icon logo
So next is a map file for which I dont have an actual copy, so I generated a new one with a 12 port FC switch with the xls sheets and already spotted more directives, o well

Code: Select all

# Generated by Cacti Weathermap.xls
INCLUDE customer_global.conf
TITLE Customer 12_PORT_SW
WIDTH 433
HEIGHT 430
TIMEPOS 5 427
KEYSTYLE DEFAULT horizontal 320 
KEYPOS FCPORT 350 0 Port State
KEYSTYLE FCPORT tags
# End of global section
# regular NODEs:

NODE 12_port_sw
        TEMPLATE DEV-monitor
        LABELOFFSET 0 -10
        POSITION 216 240
        SET host_id 15
        SET host_icon B300
NODE 12_port_sw_1
        TEMPLATE FCPORT
        LABEL 1
        POSITION 12_port_sw 15r180
        SET host_id 15
        SET state_rrd_id 1864
        SET graph_id 425
NODE 12_port_sw_2
        TEMPLATE FCPORT
        LABEL 2
        POSITION 12_port_sw 45r180
        SET host_id 15
        SET state_rrd_id 1865
        SET graph_id 426
NODE 12_port_sw_3
        TEMPLATE FCPORT
        LABEL 3
        POSITION 12_port_sw 75r180
        SET host_id 15
        SET state_rrd_id 1866
        SET graph_id 427
NODE 12_port_sw_4
        TEMPLATE FCPORT
        LABEL 4
        POSITION 12_port_sw 105r180
        SET host_id 15
        SET state_rrd_id 1867
        SET graph_id 428
NODE 12_port_sw_5
        TEMPLATE FCPORT
        LABEL 5
        POSITION 12_port_sw 135r180
        SET host_id 15
        SET state_rrd_id 1868
        SET graph_id 429
NODE 12_port_sw_6
        TEMPLATE FCPORT
        LABEL 6
        POSITION 12_port_sw 165r180
        SET host_id 15
        SET state_rrd_id 1869
        SET graph_id 430
NODE 12_port_sw_7
        TEMPLATE FCPORT
        LABEL 7
        POSITION 12_port_sw 195r180
        SET host_id 15
        SET state_rrd_id 1870
        SET graph_id 431
NODE 12_port_sw_8
        TEMPLATE FCPORT
        LABEL 8
        POSITION 12_port_sw 225r180
        SET host_id 15
        SET state_rrd_id 1871
        SET graph_id 432
NODE 12_port_sw_9
        TEMPLATE FCPORT
        LABEL 9
        POSITION 12_port_sw 255r180
        SET host_id 15
        SET state_rrd_id 1872
        SET graph_id 433
NODE 12_port_sw_10
        TEMPLATE FCPORT
        LABEL 10
        POSITION 12_port_sw 285r180
        SET host_id 15
        SET state_rrd_id 1873
        SET graph_id 434
NODE 12_port_sw_11
        TEMPLATE FCPORT
        LABEL 11
        POSITION 12_port_sw 315r180
        SET host_id 15
        SET state_rrd_id 1874
        SET graph_id 435
NODE 12_port_sw_12
        TEMPLATE FCPORT
        LABEL 12
        POSITION 12_port_sw 345r180
        SET host_id 15
        SET state_rrd_id 1875
        SET graph_id 436
LINK 12_port_sw-12_port_sw_1
        TEMPLATE FC4G-single
        NODES 12_port_sw:15r65 12_port_sw_1
        SET rrd_id 494
        SET graph_id 425
        SET host_id 15
LINK 12_port_sw-12_port_sw_2
        TEMPLATE FC4G-single
        NODES 12_port_sw:45r65 12_port_sw_2
        SET rrd_id 495
        SET graph_id 426
        SET host_id 15
LINK 12_port_sw-12_port_sw_3
        TEMPLATE FC4G-single
        NODES 12_port_sw:75r65 12_port_sw_3
        SET rrd_id 496
        SET graph_id 427
        SET host_id 15
LINK 12_port_sw-12_port_sw_4
        TEMPLATE FC4G-single
        NODES 12_port_sw:105r65 12_port_sw_4
        SET rrd_id 497
        SET graph_id 428
        SET host_id 15
LINK 12_port_sw-12_port_sw_5
        TEMPLATE FC4G-single
        NODES 12_port_sw:135r65 12_port_sw_5
        SET rrd_id 498
        SET graph_id 429
        SET host_id 15
LINK 12_port_sw-12_port_sw_6
        TEMPLATE FC4G-single
        NODES 12_port_sw:165r65 12_port_sw_6
        SET rrd_id 499
        SET graph_id 430
        SET host_id 15
LINK 12_port_sw-12_port_sw_7
        TEMPLATE FC4G-single
        NODES 12_port_sw:195r65 12_port_sw_7
        SET rrd_id 500
        SET graph_id 431
        SET host_id 15
LINK 12_port_sw-12_port_sw_8
        TEMPLATE FC4G-single
        NODES 12_port_sw:225r65 12_port_sw_8
        SET rrd_id 501
        SET graph_id 432
        SET host_id 15
LINK 12_port_sw-12_port_sw_9
        TEMPLATE FC4G-single
        NODES 12_port_sw:255r65 12_port_sw_9
        SET rrd_id 502
        SET graph_id 433
        SET host_id 15
LINK 12_port_sw-12_port_sw_10
        TEMPLATE FC4G-single
        NODES 12_port_sw:285r65 12_port_sw_10
        SET rrd_id 503
        SET graph_id 434
        SET host_id 15
LINK 12_port_sw-12_port_sw_11
        TEMPLATE FC4G-single
        NODES 12_port_sw:315r65 12_port_sw_11
        SET rrd_id 504
        SET graph_id 435
        SET host_id 15
LINK 12_port_sw-12_port_sw_12
        TEMPLATE FC4G-single
        NODES 12_port_sw:345r65 12_port_sw_12
        SET rrd_id 505
        SET graph_id 436
        SET host_id 15

So lets look at 1 node being the switch, the first switch port and the link between them

Code: Select all

NODE 12_port_sw
        TEMPLATE DEV-monitor
        LABELOFFSET 0 -10
        POSITION 216 240
        SET host_id 15
        SET host_icon B300
NODE 12_port_sw_1
        TEMPLATE FCPORT
        LABEL 1
        POSITION 12_port_sw 15r180
        SET host_id 15
        SET state_rrd_id 1864
        SET graph_id 425

LINK 12_port_sw-12_port_sw_1
        TEMPLATE FC4G-single
        NODES 12_port_sw:15r65 12_port_sw_1
        SET rrd_id 494
        SET graph_id 425
        SET host_id 15
you see the templates
  • 1) TEMPLATE DEV-monitor
  • 2) TEMPLATE FCPORT
  • 3) TEMPLATE FC4G-single
Lets have a look at DEV-monitor in the global config, more nested templates is rinse repeat

Code: Select all

NODE DEV-monitor
	TEMPLATE DEF_ZW
	TARGET cactimonitor:{node:this:host_id}
	ICON {map:customer_img_dir}/{node:this:host_icon}_{node:this:state}.png
##which is uses TEMPLATE DEF_ZW
NODE DEF_ZW
	LABEL {node:this:name}
	LABELFONT 98
	LABELBGCOLOR none
	LABELOUTLINECOLOR none
	OVERLIBWIDTH 381
	OVERLIBHEIGHT 166
	OVERLIBCAPTION Details for {node:this:name}
	MAXVALUE 100
	USESCALE none

Take the above templates and applied to the first node (being the switch) 12_port_sw

Code: Select all

NODE 12_port_sw
        TEMPLATE DEV-monitor
        LABELOFFSET 0 -10
        POSITION 216 240
        SET host_id 15
        SET host_icon B300
Is the same when I created it as

Code: Select all

NODE 12_port_sw
   LABEL {node:this:name}
   LABELFONT 98
   LABELBGCOLOR none
   LABELOUTLINECOLOR none
   OVERLIBWIDTH 381
   OVERLIBHEIGHT 166
   OVERLIBCAPTION Details for {node:this:name}
   MAXVALUE 100
   USESCALE none
        LABELOFFSET 0 -10
        POSITION 216 240
        SET host_id 15
        SET host_icon B300
   TARGET cactimonitor:{node:this:host_id}
   ICON {map:customer_img_dir}/{node:this:host_icon}_{node:this:state}.png
But since I try/tried to have it readable and reusable (again xls) I did not.

Some may have noticed the radial position and (center) offset already in the codeblocks.


Thanks @dionvdc2 I figured that out.. looks like no one uses cacti or weathermap lately... lolzz.
Welcome back ... I appreciate your response and getting back with another ID..
I might but with some other weather map stuff.. thanks for sharing all the codes..
msantana
Posts: 26
Joined: Mon May 18, 2009 8:33 am

Re: [INFO] Show off your Weathermaps.

Post by msantana »

ikorzha758 wrote: Sun Mar 01, 2015 8:28 am Another quality map from me :oops:
If someone has a good quality work don't be ashamed to post it!
This map is amazing. Do you mind sharing the config file?
Post Reply

Who is online

Users browsing this forum: No registered users and 1 guest