Hi
im Zuge der Umstellung auf tirex auf dem Wikimedia Toolserver, welcher
auf Solaris läuft, haben wir eine ganze Reihe von Änderungen am
Tirex-Source gemacht. Die meisten davon sind Solaris-Spezifisch aber
einige dürften auch für die Allgemeinheit interessant sein.
Beispielsweise haben wir die Munin-Graphen erweitert, damit sie es uns
erlauben, die tirex.conf via Umgebungsvariable aus einem eigenen
Verzeichnis zu laden (die tirex.conf liegt bei unserem Setup im Homedir
des Projektbenutzers "osm").
Außerdem haben wir die Graphen erweitert, dass sie Standardmäßig nicht
mehr die Statistiken der Map "default" sondern eine Summe aller Maps
anzeigen. Einzelne Maps können über die Munin-Üblichen Symlinks
ausgegliedert werden. Dies ist in einem Setup mit >30 eher selten
genutzter Styles die interessantere Information.
Ein Patch, der beide Änderungen enthält, hängt an.
Lg, Peter
Index: munin/tirex-tiledir-diskusage
===================================================================
--- munin/tirex-tiledir-diskusage (revision 23238)
+++ munin/tirex-tiledir-diskusage (working copy)
@@ -9,12 +9,13 @@
use strict;
use warnings;
use Tirex::Munin::Tiledir::Diskusage;
#-----------------------------------------------------------------------------
-my $config_file = $Tirex::TIREX_CONFIGFILE;
+my $config_file = exists($ENV{'config'}) ? $ENV{'config'} :
$Tirex::TIREX_CONFIGFILE;
Tirex::Config::init($config_file);
#-----------------------------------------------------------------------------
Index: munin/tirex-tiledir-tilecount-relative
===================================================================
--- munin/tirex-tiledir-tilecount-relative (revision 23238)
+++ munin/tirex-tiledir-tilecount-relative (working copy)
@@ -9,12 +9,13 @@
use strict;
use warnings;
use Tirex::Munin::Tiledir::Tilecount;
#-----------------------------------------------------------------------------
-my $config_file = $Tirex::TIREX_CONFIGFILE;
+my $config_file = exists($ENV{'config'}) ? $ENV{'config'} :
$Tirex::TIREX_CONFIGFILE;
Tirex::Config::init($config_file);
#-----------------------------------------------------------------------------
Index: munin/tirex-status-queued-requests-age
===================================================================
--- munin/tirex-status-queued-requests-age (revision 23238)
+++ munin/tirex-status-queued-requests-age (working copy)
@@ -9,12 +9,13 @@
use strict;
use warnings;
use Tirex::Munin::Status::QueuedRequestsAge;
#-----------------------------------------------------------------------------
-my $config_file = $Tirex::TIREX_CONFIGFILE;
+my $config_file = exists($ENV{'config'}) ? $ENV{'config'} :
$Tirex::TIREX_CONFIGFILE;
Tirex::Config::init($config_file);
#-----------------------------------------------------------------------------
Index: munin/tirex-status-render-time
===================================================================
--- munin/tirex-status-render-time (revision 23238)
+++ munin/tirex-status-render-time (working copy)
@@ -9,19 +9,20 @@
use strict;
use warnings;
use Tirex::Munin::Status::RenderTime;
#-----------------------------------------------------------------------------
-my $config_file = $Tirex::TIREX_CONFIGFILE;
+my $config_file = exists($ENV{'config'}) ? $ENV{'config'} :
$Tirex::TIREX_CONFIGFILE;
Tirex::Config::init($config_file);
#-----------------------------------------------------------------------------
(my $execname = $0) =~ s{^.*/}{};
-my $map = 'default';
+my $map = '*';
if ($execname =~ /^tirex-status-render-time-(.*)$/)
{
$map = $1;
Index: munin/tirex-tiledir-tilecount-absolute
===================================================================
--- munin/tirex-tiledir-tilecount-absolute (revision 23238)
+++ munin/tirex-tiledir-tilecount-absolute (working copy)
@@ -9,12 +9,13 @@
use strict;
use warnings;
use Tirex::Munin::Tiledir::Tilecount;
#-----------------------------------------------------------------------------
-my $config_file = $Tirex::TIREX_CONFIGFILE;
+my $config_file = exists($ENV{'config'}) ? $ENV{'config'} :
$Tirex::TIREX_CONFIGFILE;
Tirex::Config::init($config_file);
#-----------------------------------------------------------------------------
Index: munin/tirex-status-queued-requests
===================================================================
--- munin/tirex-status-queued-requests (revision 23238)
+++ munin/tirex-status-queued-requests (working copy)
@@ -9,12 +9,13 @@
use strict;
use warnings;
use Tirex::Munin::Status::QueuedRequests;
#-----------------------------------------------------------------------------
-my $config_file = $Tirex::TIREX_CONFIGFILE;
+my $config_file = exists($ENV{'config'}) ? $ENV{'config'} :
$Tirex::TIREX_CONFIGFILE;
Tirex::Config::init($config_file);
#-----------------------------------------------------------------------------
Index: munin/tirex-status-requests-rendered
===================================================================
--- munin/tirex-status-requests-rendered (revision 23238)
+++ munin/tirex-status-requests-rendered (working copy)
@@ -9,19 +9,20 @@
use strict;
use warnings;
use Tirex::Munin::Status::RequestsRendered;
#-----------------------------------------------------------------------------
-my $config_file = $Tirex::TIREX_CONFIGFILE;
+my $config_file = exists($ENV{'config'}) ? $ENV{'config'} :
$Tirex::TIREX_CONFIGFILE;
Tirex::Config::init($config_file);
#-----------------------------------------------------------------------------
(my $execname = $0) =~ s{^.*/}{};
-my $map = 'default';
+my $map = '*';
if ($execname =~ /^tirex-status-requests-rendered-(.*)$/)
{
$map = $1;
Index: munin/tirex-tiledir-tileage
===================================================================
--- munin/tirex-tiledir-tileage (revision 23238)
+++ munin/tirex-tiledir-tileage (working copy)
@@ -9,12 +9,13 @@
use strict;
use warnings;
use Tirex::Munin::Tiledir::Tileage;
#-----------------------------------------------------------------------------
-my $config_file = $Tirex::TIREX_CONFIGFILE;
+my $config_file = exists($ENV{'config'}) ? $ENV{'config'} :
$Tirex::TIREX_CONFIGFILE;
Tirex::Config::init($config_file);
#-----------------------------------------------------------------------------
Index: munin/tirex-status-active-requests
===================================================================
--- munin/tirex-status-active-requests (revision 23238)
+++ munin/tirex-status-active-requests (working copy)
@@ -9,12 +9,13 @@
use strict;
use warnings;
use Tirex::Munin::Status::ActiveRequests;
#-----------------------------------------------------------------------------
-my $config_file = $Tirex::TIREX_CONFIGFILE;
+my $config_file = exists($ENV{'config'}) ? $ENV{'config'} :
$Tirex::TIREX_CONFIGFILE;
Tirex::Config::init($config_file);
#-----------------------------------------------------------------------------
Index: lib/Tirex/Munin/Status/RequestsRendered.pm
===================================================================
--- lib/Tirex/Munin/Status/RequestsRendered.pm (revision 23238)
+++ lib/Tirex/Munin/Status/RequestsRendered.pm (working copy)
@@ -31,16 +31,34 @@
my $map = $self->{'map'};
my $per = $self->{'per'} // 'second';
- my $config = <<EOF;
-graph_title Requests rendered for map $map
+ my $config = '';
+
+ if($map eq '*')
+ {
+ $config .= "graph_title Requests rendered\n";
+ }
+ else
+ {
+ $config .= sprintf("graph_title Requests rendered for map %s\n", $map);
+ }
+
+ $config .= <<EOF;
graph_vlabel requests/$per
graph_category tirex
graph_args --lower-limit 0
graph_scale no
graph_period $per
-graph_info Number of metatile requests rendered per $per for map $map.
EOF
+ if($map eq '*')
+ {
+ $config .= "graph_info Number of metatile requests rendered per
$per\n";
+ }
+ else
+ {
+ $config .= sprintf("graph_info Number of metatile requests rendered
per $per for map %s\n", $map);
+ }
+
foreach my $zoomrange (@{$self->{'zoomranges'}})
{
my $id = $zoomrange->get_id();
@@ -66,7 +84,18 @@
my $sum = 0;
foreach my $z ($zoomrange->get_min() .. $zoomrange->get_max())
{
- $sum +=
($self->{'status'}->{'rm'}->{'stats'}->{'count_rendered'}->{$self->{'map'}}->[$z]
// 0);
+ if($self->{'map'} eq '*')
+ {
+ my $maps =
$self->{'status'}->{'rm'}->{'stats'}->{'count_rendered'};
+ while ( my ($map, $stats) = each( %$maps ) )
+ {
+ $sum += ($stats->[$z] // 0);
+ }
+ }
+ else
+ {
+ $sum +=
($self->{'status'}->{'rm'}->{'stats'}->{'count_rendered'}->{$self->{'map'}}->[$z]
// 0);
+ }
}
$data .= sprintf("%s.value %d\n", $zoomrange->get_id(), $sum);
}
Index: lib/Tirex/Munin/Status/RenderTime.pm
===================================================================
--- lib/Tirex/Munin/Status/RenderTime.pm (revision 23238)
+++ lib/Tirex/Munin/Status/RenderTime.pm (working copy)
@@ -29,15 +29,33 @@
my $self = shift;
my $map = $self->{'map'};
- my $config = <<EOF;
-graph_title Render time for map $map
+ my $config = '';
+
+ if($map eq '*')
+ {
+ $config .= "graph_title Render time\n";
+ }
+ else
+ {
+ $config .= sprintf("graph_title Render time for map %s\n", $map);
+ }
+
+ $config .= <<EOF;
graph_vlabel millisecond/second
graph_category tirex
graph_args --lower-limit 0
graph_scale no
-graph_info Milliseconds each second spend rendering tiles for map $map.
EOF
+ if($map eq '*')
+ {
+ $config .= "graph_info Milliseconds each second spend rendering
tiles\n";
+ }
+ else
+ {
+ $config .= sprintf("graph_info Milliseconds each second spend
rendering tiles for map %s\n", $map);
+ }
+
foreach my $zoomrange (@{$self->{'zoomranges'}})
{
my $id = $zoomrange->get_id();
@@ -60,7 +78,18 @@
my $sum = 0;
foreach my $z ($zoomrange->get_min() .. $zoomrange->get_max())
{
- $sum +=
($self->{'status'}->{'rm'}->{'stats'}->{'sum_render_time'}->{$self->{'map'}}->[$z]
// 0);
+ if($self->{'map'} eq '*')
+ {
+ my $maps =
$self->{'status'}->{'rm'}->{'stats'}->{'sum_render_time'};
+ while ( my ($map, $stats) = each( %$maps ) )
+ {
+ $sum += ($stats->[$z] // 0);
+ }
+ }
+ else
+ {
+ $sum +=
($self->{'status'}->{'rm'}->{'stats'}->{'sum_render_time'}->{$self->{'map'}}->[$z]
// 0);
+ }
}
$data .= sprintf("%s.value %d\n", $zoomrange->get_id(), $sum);
}
_______________________________________________
dev mailing list
[email protected]
http://lists.openstreetmap.org/listinfo/dev