return "$orig ($job_name)";
}
-sub ADSL : Job : MinProcesses(1) : MaxProcesses(5) : Decode(d_json) {
- my ( $self, $job, $workload ) = @_;
+
+sub pg_insert {
+ my ( $self, $table, $h ) = @_;
my $dbh = DBI->connect_cached('DBI:Pg:dbname=apkpm','','', {
RaiseError => 1,
AutoCommit => 1,
});
+ my @c = keys %$h;
+
+ my $sql = "INSERT INTO $table (" . join(',',@c) . ') values (' . join(',', map { '?' } 0 .. $#c) . ')';
+ warn $sql;
+ my $sth = $dbh->prepare($sql);
+ $sth->execute( map { $h->{$_} } @c );
+}
+
+sub ADSL : Job : MinProcesses(1) : MaxProcesses(5) : Decode(d_json) {
+ my ( $self, $job, $workload ) = @_;
+
my $h = $workload->{ADSL} || die "no ADSL in ",dump $workload;
foreach my $c ( qw(ip username) ) {
$h->{$c} = $workload->{$c} || die "no $c in ",dump $workload;
warn "# ADSL ", dump $h;
- my @c = keys %$h;
-
- my $sql = 'INSERT INTO adsl (' . join(',',@c) . ') values (' . join(',', map { '?' } 0 .. $#c) . ')';
- warn $sql;
- my $sth = $dbh->prepare($sql);
- $sth->execute( map { $h->{$_} } @c );
+ $self->pg_insert(adsl => $h)
}
+sub ping : Job : MinProcesses(1) : MaxProcesses(5) : Decode(d_json) {
+ my ( $self, $job, $workload ) = @_;
+
+ $self->pg_insert(ping => $workload);
+}
1;