Multi CPU Utilization Graph
Moderators: Developers, Moderators
Multi CPU Utilization Graph
Multi CPU Utilization Graphs, using SNMP
So far (see below) I've found that the 3 xmls in slech's zip file (Page 9 of this thread), work well - at least as well as my original's, though you DO still need to associate the data items AFTER creating the graphs. I've attached this zip to this post. {Edit: I have new versions with a little tweak to them almost ready to upload}
Quick tutorial on how to use/customise:
1. Import the template in cacti
-- Goto the console pane
-- Click on Import Templates
-- Choose the file (template) to import
-- Click Import
2. Create Graphs
-- Goto console pane
-- Goto Devices
-- Choose your device (host)
-- Click on Create *Create Graphs for this Host
-- Choose from the drop down in the "Graph Template Section" the relevant graph - "HOST MIB - MULT CPU utilization on X processor box" - Where X is the number of CPUs in your device
-- Click Create
-- on the next screen you will asked the index-value/type ... just click on save and its not over yet !!
3. Get the Graphs working
-- Goto Console
-- Goto Graph Management
-- locate the graph you just created, click on it
-- in "Supplemental Graph Template Data” select the cpu you wish to graph on the multi-cpu-graph, for each data source item, from the relevant dropdown. This is most likely HOSTNAME - CPU Utilization - CPU0 (cpu), HOSTNAME - CPU Utilization - CPU1 (cpu) and so on ...
-- (optional - : you can now delete the initial graphs that you created in step 2 but when asked be sure to keep the data-sources intact because the multi-cpu-graph needs these data sources.)
4. A little bit of customisation
-- This bit just changes the colour of the Average (or MEAN) CPU utilization from yellow to PINK (as above), but you can choose any colour/opacity combination
-- Goto Graph Templates on the Console Tab
-- Click on the Multi-CPU Template you want to change
-- Click on Item #1
-- Choose the "Color" [sic] from the dropdown (I chose FF00FF)
-- Choose the "Opacity/Alpha Channel" from the dropdown (I chose 30%)
-- Click Save
Some of the above has been borrowed from this tutorial: http://www.goldfisch.at/knowwiki/howtos ... u_graphing, though I do take exception to point 6 - as far as I can work out the average IS calculated correctly my way. If you use the ALL_DATA_SOURCES_NODUPS special data source, you end up with a higher average CPU ute than you would expect - as it also includes ITSELF in the calculation - unless TPTB have fixed it since I wrote the original CDEF. Either way the original way does work, and IS correct (IMO).
More to come... Maybe... if I can pretty these things up (ponders if you do more than 8 should/could you do some going down as well as some going up ?). I may have worked out a way to shortcut some of the above...
All, I've just spent an hour trawling through this thread, and realised that, to a Cacti Newbie, or just someone wanting to do this for the first time, its a complete nightmare.... Everything above is new/subject to change
Thus this edit...
I'm at a new site, brand new CactiEZ install (Cacti 0.8.8a), with no Multi-CPU graphs. So I tried using Aggregate to create Multi-CPU, well it works, but its not pretty, and just not as good as my earlier efforts, so... I shall look at the templates we've all come up with get 3 (or 4) which actually work, maybe pretty them up a bit, and put them back here, and probably over at the repository - may start a new thread here too...
This MAY take a while, as I'll be doing it in my lunch hours...
(I've decided against using WMI unless I REALLY can't avoid it as I just kept coming up against performance problems when using it before, and most, if not all, of what I need is now exposed via SNMP).
OK - first thing - this template by jzondor: cacti_graph_template_multi_cpu_utilization_on_4_processor_box_v2a.xml only has stuff to do with Cisco 3000 in it - does anybody know why this is?
----------------------------------------------------------------------------------
Original Post Below this line
----------------------------------------------------------------------------------
Right, like many people I have many servers with multiple CPUs.
What I want to see is:
a graph which shows :
1) the average utilization over all CPUs (maybe as a light area in the "background")
2) the utilization of each CPU (perhaps as dark lines in the foreground).
That's it really...
Trying to work this out at the moment, worked out how to do part 2 on a case by case basis (as long as the individual data sources exist) - but now want to turn it into a template (using the convert to template function works but takes the data sources I used for the graph with it - instead of using the query...)
So how do you graph the average over 2 data sources? Create a new source?
Argon0
So far (see below) I've found that the 3 xmls in slech's zip file (Page 9 of this thread), work well - at least as well as my original's, though you DO still need to associate the data items AFTER creating the graphs. I've attached this zip to this post. {Edit: I have new versions with a little tweak to them almost ready to upload}
Quick tutorial on how to use/customise:
1. Import the template in cacti
-- Goto the console pane
-- Click on Import Templates
-- Choose the file (template) to import
-- Click Import
2. Create Graphs
-- Goto console pane
-- Goto Devices
-- Choose your device (host)
-- Click on Create *Create Graphs for this Host
-- Choose from the drop down in the "Graph Template Section" the relevant graph - "HOST MIB - MULT CPU utilization on X processor box" - Where X is the number of CPUs in your device
-- Click Create
-- on the next screen you will asked the index-value/type ... just click on save and its not over yet !!
3. Get the Graphs working
-- Goto Console
-- Goto Graph Management
-- locate the graph you just created, click on it
-- in "Supplemental Graph Template Data” select the cpu you wish to graph on the multi-cpu-graph, for each data source item, from the relevant dropdown. This is most likely HOSTNAME - CPU Utilization - CPU0 (cpu), HOSTNAME - CPU Utilization - CPU1 (cpu) and so on ...
-- (optional - : you can now delete the initial graphs that you created in step 2 but when asked be sure to keep the data-sources intact because the multi-cpu-graph needs these data sources.)
4. A little bit of customisation
-- This bit just changes the colour of the Average (or MEAN) CPU utilization from yellow to PINK (as above), but you can choose any colour/opacity combination
-- Goto Graph Templates on the Console Tab
-- Click on the Multi-CPU Template you want to change
-- Click on Item #1
-- Choose the "Color" [sic] from the dropdown (I chose FF00FF)
-- Choose the "Opacity/Alpha Channel" from the dropdown (I chose 30%)
-- Click Save
Some of the above has been borrowed from this tutorial: http://www.goldfisch.at/knowwiki/howtos ... u_graphing, though I do take exception to point 6 - as far as I can work out the average IS calculated correctly my way. If you use the ALL_DATA_SOURCES_NODUPS special data source, you end up with a higher average CPU ute than you would expect - as it also includes ITSELF in the calculation - unless TPTB have fixed it since I wrote the original CDEF. Either way the original way does work, and IS correct (IMO).
More to come... Maybe... if I can pretty these things up (ponders if you do more than 8 should/could you do some going down as well as some going up ?). I may have worked out a way to shortcut some of the above...
All, I've just spent an hour trawling through this thread, and realised that, to a Cacti Newbie, or just someone wanting to do this for the first time, its a complete nightmare.... Everything above is new/subject to change
Thus this edit...
I'm at a new site, brand new CactiEZ install (Cacti 0.8.8a), with no Multi-CPU graphs. So I tried using Aggregate to create Multi-CPU, well it works, but its not pretty, and just not as good as my earlier efforts, so... I shall look at the templates we've all come up with get 3 (or 4) which actually work, maybe pretty them up a bit, and put them back here, and probably over at the repository - may start a new thread here too...
This MAY take a while, as I'll be doing it in my lunch hours...
(I've decided against using WMI unless I REALLY can't avoid it as I just kept coming up against performance problems when using it before, and most, if not all, of what I need is now exposed via SNMP).
OK - first thing - this template by jzondor: cacti_graph_template_multi_cpu_utilization_on_4_processor_box_v2a.xml only has stuff to do with Cisco 3000 in it - does anybody know why this is?
----------------------------------------------------------------------------------
Original Post Below this line
----------------------------------------------------------------------------------
Right, like many people I have many servers with multiple CPUs.
What I want to see is:
a graph which shows :
1) the average utilization over all CPUs (maybe as a light area in the "background")
2) the utilization of each CPU (perhaps as dark lines in the foreground).
That's it really...
Trying to work this out at the moment, worked out how to do part 2 on a case by case basis (as long as the individual data sources exist) - but now want to turn it into a template (using the convert to template function works but takes the data sources I used for the graph with it - instead of using the query...)
So how do you graph the average over 2 data sources? Create a new source?
Argon0
Last edited by argon0 on Fri Feb 15, 2013 11:33 am, edited 5 times in total.
No longer a n00by, probably, by now an 0ldby
Now Head of Technology at RSCH, back to the prickly subject of Monitorring....
Now Head of Technology at RSCH, back to the prickly subject of Monitorring....
Hokay - I thought I'd created a data source that included multiple cpu instances, but when I try to use it to create graphs I get this:
i.e. the data source file doesn't exist.
The Data Source itself gives me this code:
The file in question does not exit...[/i]
Code: Select all
/usr/bin/rrdtool graph - \
--imgformat=PNG \
--start=-86400 \
--end=-300 \
--title="UKEC4SI - Test Server - CPU Utilization Multi" \
--base=1000 \
--height=120 \
--width=500 \
--alt-autoscale-max \
--lower-limit=0 \
--vertical-label="" \
--slope-mode \
DEF:a="/var/www/html/rra/ukec4si_test_server_cpu_194.rrd":cpu:AVERAGE \
DEF:b="/var/www/html/rra/ukec4si_test_server_cpu_194.rrd":cpu1:AVERAGE \
LINE1:a#FF0000:"CPU Utilization (CPU0)" \
GPRINT:a:LAST:"Current\:%8.0lf" \
GPRINT:a:AVERAGE:"Average\:%8.0lf" \
GPRINT:a:MAX:"Max\:%8.0lf\n" \
LINE1:b#0D006A:"CPU Utilization (CPU1)" \
GPRINT:b:LAST:"Current\:%8.0lf" \
GPRINT:b:AVERAGE:"Average\:%8.0lf" \
GPRINT:b:MAX:"Max\:%8.0lf"
RRDTool Says:
ERROR: opening '/var/www/html/rra/ukec4si_test_server_cpu_194.rrd': No such file or directory
The Data Source itself gives me this code:
Code: Select all
/usr/bin/rrdtool create \
/var/www/html/rra/ukec4si_test_server_cpu_194.rrd \
--step 300 \
DS:cpu:GAUGE:600:0:U \
DS:cpu1:GAUGE:600:1:1 \
DS:cpu2:GAUGE:600:2:2 \
DS:cpu3:GAUGE:600:3:3 \
RRA:AVERAGE:0.5:1:600 \
RRA:AVERAGE:0.5:6:700 \
RRA:AVERAGE:0.5:24:775 \
RRA:AVERAGE:0.5:288:797 \
RRA:MIN:0.5:1:600 \
RRA:MIN:0.5:6:700 \
RRA:MIN:0.5:24:775 \
RRA:MIN:0.5:288:797 \
RRA:MAX:0.5:1:600 \
RRA:MAX:0.5:6:700 \
RRA:MAX:0.5:24:775 \
RRA:MAX:0.5:288:797 \
RRA:LAST:0.5:1:600 \
RRA:LAST:0.5:6:700 \
RRA:LAST:0.5:24:775 \
RRA:LAST:0.5:288:797 \
No longer a n00by, probably, by now an 0ldby
Now Head of Technology at RSCH, back to the prickly subject of Monitorring....
Now Head of Technology at RSCH, back to the prickly subject of Monitorring....
When I try and create the graph for a new host I get asked for:
Custom Data [Template: Host MIB - CPU Utilization]
Index Type
Index Value
Output Type ID
What (if anything) should I put here?
Custom Data [Template: Host MIB - CPU Utilization]
Index Type
Index Value
Output Type ID
What (if anything) should I put here?
No longer a n00by, probably, by now an 0ldby
Now Head of Technology at RSCH, back to the prickly subject of Monitorring....
Now Head of Technology at RSCH, back to the prickly subject of Monitorring....
OK, I'm stuck - thought I knew what I was doing, but no, buggered if I can get it right!!!
At the moment wouldn't mind if all I could do was get two graphs...
1) Showing up to 4 cpus
2) shoing the average over up to 4 cpus
At the moment I'm going around in circles trying to get it to graph the separate CPUs - anybody offer any help?
Argon0
At the moment wouldn't mind if all I could do was get two graphs...
1) Showing up to 4 cpus
2) shoing the average over up to 4 cpus
At the moment I'm going around in circles trying to get it to graph the separate CPUs - anybody offer any help?
Argon0
No longer a n00by, probably, by now an 0ldby
Now Head of Technology at RSCH, back to the prickly subject of Monitorring....
Now Head of Technology at RSCH, back to the prickly subject of Monitorring....
HAYELP...
Ok here is a graph I've managed to create of 4 CPUs on one box:
As you will see its not *quite* right, the Mean CPU function seems to give a different amount than you would expect - i.e. higher..
The function it uses is a CDEF I created which looks like this:
CDEF:cdefa=TIME,1138381205,GT,b,b,UN,0,b,IF,IF,TIME,1138381205,GT,b,b,UN,0,b,IF,IF,TIME,1138381205,GT,c,c,UN,0,c,IF,IF,TIME,1138381205,GT,d,d,UN,0,d,IF,IF,TIME,1138381205,GT,e,e,UN,0,e,IF,IF,+,+,+,+,4,/ \
basically What I thought I was doing was a cdef which looks like this:
Is there acdef function you can use which will give the average over all data sources?
What the CDEF I've created SEEMS to do is add up ALL the data sources (including itself) for the graph then divide by 4.... Which gives the higher value than the average should be - and leads to the MAX value being higher than 100%...
Here is the entire code for the graph.
As you will see its not *quite* right, the Mean CPU function seems to give a different amount than you would expect - i.e. higher..
The function it uses is a CDEF I created which looks like this:
CDEF:cdefa=TIME,1138381205,GT,b,b,UN,0,b,IF,IF,TIME,1138381205,GT,b,b,UN,0,b,IF,IF,TIME,1138381205,GT,c,c,UN,0,c,IF,IF,TIME,1138381205,GT,d,d,UN,0,d,IF,IF,TIME,1138381205,GT,e,e,UN,0,e,IF,IF,+,+,+,+,4,/ \
basically What I thought I was doing was a cdef which looks like this:
Code: Select all
Item Item Value
Item #1 Special Data Source: ALL_DATA_SOURCES_NODUPS
Item #2 Custom String: 4
Item #3 Operator: /
Is there acdef function you can use which will give the average over all data sources?
What the CDEF I've created SEEMS to do is add up ALL the data sources (including itself) for the graph then divide by 4.... Which gives the higher value than the average should be - and leads to the MAX value being higher than 100%...
Here is the entire code for the graph.
Code: Select all
/usr/bin/rrdtool graph - \
--imgformat=PNG \
--start=-86400 \
--end=-300 \
--title="Multi CPU Utilization on UKHALWEB1" \
--base=1000 \
--height=120 \
--width=500 \
--alt-autoscale-max \
--lower-limit=0 \
--vertical-label="" \
--slope-mode \
DEF:a="/var/www/html/rra/ukhalweb1_cpu_97.rrd":cpu:AVERAGE \
DEF:b="/var/www/html/rra/ukhalweb1_cpu_97.rrd":cpu:AVERAGE \
DEF:c="/var/www/html/rra/ukhalweb1_cpu_98.rrd":cpu:AVERAGE \
DEF:d="/var/www/html/rra/ukhalweb1_cpu_99.rrd":cpu:AVERAGE \
DEF:e="/var/www/html/rra/ukhalweb1_cpu_100.rrd":cpu:AVERAGE \
CDEF:cdefa=TIME,1138381205,GT,b,b,UN,0,b,IF,IF,TIME,1138381205,GT,b,b,UN,0,b,IF,IF,TIME,1138381205,GT,c,c,UN,0,c,IF,IF,TIME,1138381205,GT,d,d,UN,0,d,IF,IF,TIME,1138381205,GT,e,e,UN,0,e,IF,IF,+,+,+,+,4,/ \
CDEF:cdefb=TIME,1138381205,GT,b,b,UN,0,b,IF,IF,TIME,1138381205,GT,b,b,UN,0,b,IF,IF,TIME,1138381205,GT,c,c,UN,0,c,IF,IF,TIME,1138381205,GT,d,d,UN,0,d,IF,IF,TIME,1138381205,GT,e,e,UN,0,e,IF,IF,+,+,+,+,4,/ \
AREA:cdefa#FAFD9E:"Mean CPU" \
GPRINT:cdefb:LAST:" Current\:%8.2lf %%" \
GPRINT:cdefb:MIN:"Min\:%8.2lf %%" \
GPRINT:cdefb:MAX:"Max\:%8.2lf %%\n" \
LINE1:b#0000FF:"CPU0" \
GPRINT:b:LAST:" Current\:%8.2lf %%" \
GPRINT:b:MIN:"Min\:%8.2lf %%" \
GPRINT:b:MAX:"Max\:%8.2lf %%\n" \
LINE1:c#00A348:"CPU1" \
GPRINT:c:LAST:" Current\:%8.2lf %%" \
GPRINT:c:MIN:"Min\:%8.2lf %%" \
GPRINT:c:MAX:"Max\:%8.2lf %%\n" \
LINE1:d#C4FD3D:"CPU2" \
GPRINT:d:AVERAGE:" Current\:%8.2lf %%" \
GPRINT:d:MIN:"Min\:%8.2lf %%" \
GPRINT:d:MAX:"Max\:%8.2lf %%\n" \
LINE1:e#FF0000:"CPU3" \
GPRINT:e:AVERAGE:" Current\:%8.2lf %%" \
GPRINT:e:MIN:"Min\:%8.2lf %%" \
GPRINT:e:MAX:"Max\:%8.2lf %%"
- Attachments
-
- graph_image_multi_cpu.png (42.11 KiB) Viewed 210648 times
No longer a n00by, probably, by now an 0ldby
Now Head of Technology at RSCH, back to the prickly subject of Monitorring....
Now Head of Technology at RSCH, back to the prickly subject of Monitorring....
- gandalf
- Developer
- Posts: 22383
- Joined: Thu Dec 02, 2004 2:46 am
- Location: Muenster, Germany
- Contact:
Re: HAYELP...
You included a data source twice. Please have a look at your graph template to reveal this ...argon0 wrote:The function it uses is a CDEF I created which looks like this:
CDEF:cdefa=TIME,1138381205,GT,b,b,UN,0,b,IF,IF,TIME,1138381205,GT,b,b,UN,0,b,IF,IF,TIME,1138381205,GT,c,c,UN,0,c,IF,IF,TIME,1138381205,GT,d,d,UN,0,d,IF,IF,TIME,1138381205,GT,e,e,UN,0,e,IF,IF,+,+,+,+,4,/ \
DEF:a="/var/www/html/rra/ukhalweb1_cpu_97.rrd":cpu:AVERAGE \
DEF:b="/var/www/html/rra/ukhalweb1_cpu_97.rrd":cpu:AVERAGE \
Reinhard
- gandalf
- Developer
- Posts: 22383
- Joined: Thu Dec 02, 2004 2:46 am
- Location: Muenster, Germany
- Contact:
a) Goto Graph Management and select the Graph; select Convert to Graph Template. To use this: Goto Graph Management and ADD. Choose the newly generated Graph Template and the host in question. Now you're getting the required data sources to select. AFAIK, this will ONLY work, if the Graph Template defines exactly the same number of Items you want to graph (e.g. the template holds for 4 CPUs, but your current host has only 3 => won't work). I'm currently looking at that stuff. Perhaps I'll find a workaround; but this may take timeargon0 wrote:ANybody got any ideas how I could
a) turn this graph into a generic template
b) get the average CPU utilisation over all CPUs to read correctly...
b) see my post above
Reinhard
Yup - worked that out about the multi cdefs...
Graph template, well this kind of works, but the problem then becomes the data sources..
I've fudged a way around most of the problems. But still can't get it to graph/calculate the average utilsation over all cpus properly.
(I use the cdef Special Data Source: ALL_DATA_SOURCES_NODUPS, and divide by the number of cpus, this too high a value, as it includes this cdef in the calculation, e.g. I have two processors, one at 50% util, one at 40% util, the mean util should be 45%, but the calculation gives 72.5%, I think what is happening is it takes the 50 adds the 45 divides by two, adds the result of this calculation to the first two data sources, then divides by two again to get the final answer...) -- hayelp...
Graph template, well this kind of works, but the problem then becomes the data sources..
I've fudged a way around most of the problems. But still can't get it to graph/calculate the average utilsation over all cpus properly.
(I use the cdef Special Data Source: ALL_DATA_SOURCES_NODUPS, and divide by the number of cpus, this too high a value, as it includes this cdef in the calculation, e.g. I have two processors, one at 50% util, one at 40% util, the mean util should be 45%, but the calculation gives 72.5%, I think what is happening is it takes the 50 adds the 45 divides by two, adds the result of this calculation to the first two data sources, then divides by two again to get the final answer...) -- hayelp...
No longer a n00by, probably, by now an 0ldby
Now Head of Technology at RSCH, back to the prickly subject of Monitorring....
Now Head of Technology at RSCH, back to the prickly subject of Monitorring....
Here's the code for the graph:
You will notice there are THREE data sources on this 2 CPU graph, 2 of which are the same (so no_dups should take care of that, surely...) - no idea why this is I've only defined 2 data sources in the graph & only been asked for 2 when I change the graph around...
again -- HAYELP!!!
Code: Select all
RRDTool Command:
/usr/bin/rrdtool graph - \
--imgformat=PNG \
--start=-86400 \
--end=-300 \
--title="Multi CPU Utilization on UKHALWEB2" \
--base=1000 \
--height=120 \
--width=500 \
--alt-autoscale-max \
--lower-limit=0 \
--vertical-label="" \
--slope-mode \
DEF:a="/var/www/html/rra/ukhalweb2_cpu_231.rrd":cpu:AVERAGE \
DEF:b="/var/www/html/rra/ukhalweb2_cpu_231.rrd":cpu:AVERAGE \
DEF:c="/var/www/html/rra/ukhalweb2_cpu_232.rrd":cpu:AVERAGE \
CDEF:cdefa=TIME,1138704170,GT,b,b,UN,0,b,IF,IF,TIME,1138704170,GT,b,b,UN,0,b,IF,IF,TIME,1138704170,GT,c,c,UN,0,c,IF,IF,+,+,2,/ \
AREA:cdefa#FAFD9E:"Mean CPU" \
GPRINT:cdefa:LAST:" Current\:%8.2lf %%" \
GPRINT:cdefa:MIN:"Min\:%8.2lf %%" \
GPRINT:cdefa:MAX:"Max\:%8.2lf %%\n" \
LINE1:b#0000FF:"CPU0" \
GPRINT:b:LAST:" Current\:%8.2lf %%" \
GPRINT:b:MIN:"Min\:%8.2lf %%" \
GPRINT:b:MAX:"Max\:%8.2lf %%\n" \
LINE1:c#00A348:"CPU1" \
GPRINT:c:LAST:" Current\:%8.2lf %%" \
GPRINT:c:MIN:"Min\:%8.2lf %%" \
GPRINT:c:MAX:"Max\:%8.2lf %%\n"
again -- HAYELP!!!
No longer a n00by, probably, by now an 0ldby
Now Head of Technology at RSCH, back to the prickly subject of Monitorring....
Now Head of Technology at RSCH, back to the prickly subject of Monitorring....
One important thing whent you hade some hole in your graphe
If like me you have some Time Out on CPU request
you must add a minimu value to your CDEF command
like this
Item #1 Special Data Source: ALL_DATA_SOURCES_NODUPS Move Down Move Up Delete
Item #2 Custom String: 4 Move Down Move Up Delete
Item #3 Operator: + Move Down Move Up Delete
Item #4 Custom String: 4 Move Down Move Up Delete
Item #5 Operator: /
If you don't do this your graph will not display anymore information after applying the CDEF command
( you can't divide 0 by any number .... )
Here i put a value like one percent i think this is ok and don't make my graph too false
If someone hade an idea about the methode to bypass this limitation ?
you must add a minimu value to your CDEF command
like this
Item #1 Special Data Source: ALL_DATA_SOURCES_NODUPS Move Down Move Up Delete
Item #2 Custom String: 4 Move Down Move Up Delete
Item #3 Operator: + Move Down Move Up Delete
Item #4 Custom String: 4 Move Down Move Up Delete
Item #5 Operator: /
If you don't do this your graph will not display anymore information after applying the CDEF command
( you can't divide 0 by any number .... )
Here i put a value like one percent i think this is ok and don't make my graph too false
If someone hade an idea about the methode to bypass this limitation ?
In the dark we trust.
in the light we die.
in the light we die.
The template for exemple
Here is the temple i hade generated with cacti export tool
- Attachments
-
- cacti_graph_template_charge_total_cpu.xml
- All cpu information for Server which hade 4 CPU
- (21.08 KiB) Downloaded 21408 times
In the dark we trust.
in the light we die.
in the light we die.
Who is online
Users browsing this forum: No registered users and 4 guests