[Orca-dev] Re: unknown value

Blair Zajac blair at gps.caltech.edu
Mon Jun 11 11:13:54 PDT 2001


At this point I think you'll have to go into the code and start
hacking.

If you develop a patch, please send it along to the newsgroup for
other people to use.

Regards,
Blair

"Jason D. Kelleher" wrote:
> 
> We re-ran with 27b1 (which contains this patch) and got the same
> errors with the same results.
> 
> jason
> 
> --- Blair Zajac <blair at gps.caltech.edu> wrote:
> > Try the attached patch to Orca to have it ignore input values that
> > are equal to 'U' and pass 'U' to RRDtool.
> >
> > Blair
> >
> > "Jason D. Kelleher" wrote:
> > >
> > > Nope.  How will counter values of "U" be treated?  My results are
> > the
> > > same, but now Orca throws out the following errors:
> > >
> > > /opt/orca/bin/orca: making directory
> > > `/opt/orca/data/dw-ibm/sp/html/ODO'.
> > > Argument "U" isn't numeric in multiply at (eval 95) line 3, <FD>
> > > chunk 77.
> > > Argument "U" isn't numeric in multiply at (eval 95) line 3, <FD>
> > > chunk 77.
> > > Argument "U" isn't numeric in subtract at (eval 95) line 3, <FD>
> > > chunk 77.
> > > Argument "U" isn't numeric in subtract at (eval 95) line 3, <FD>
> > > chunk 77.
> > > Argument "U" isn't numeric in subtract at (eval 95) line 3, <FD>
> > > chunk 77.
> > > Argument "U" isn't numeric in multiply at (eval 95) line 3, <FD>
> > > chunk 78.
> > > Argument "U" isn't numeric in multiply at (eval 95) line 3, <FD>
> > > chunk 78.
> > > Argument "U" isn't numeric in subtract at (eval 95) line 3, <FD>
> > > chunk 78.
> > > Argument "U" isn't numeric in subtract at (eval 95) line 3, <FD>
> > > chunk 78.
> > > Argument "U" isn't numeric in subtract at (eval 95) line 3, <FD>
> > > chunk 78.
> > > Argument "U" isn't numeric in multiply at (eval 95) line 3, <FD>
> > > chunk 79.
> > > Argument "U" isn't numeric in multiply at (eval 95) line 3, <FD>
> > > chunk 79.
> > > Argument "U" isn't numeric in subtract at (eval 95) line 3, <FD>
> > > chunk 79.
> > > Argument "U" isn't numeric in subtract at (eval 95) line 3, <FD>
> > > chunk 79.
> > > Argument "U" isn't numeric in subtract at (eval 95) line 3, <FD>
> > > chunk 79.
> > >
> > > --- Blair Zajac <blair at gps.caltech.edu> wrote:
> > > > If you use the value U and pass this to Orca, then this will be
> > > > understood by RRDtool to mean an unknown value.
> > > >
> > > > Let me know if this works.
> > > >
> > > > Blair
> > > >
> > > > "Jason D. Kelleher" wrote:
> > > > >
> > > > > I'm writing a script that takes datafiles from severals nodes
> > in
> > > > an
> > > > > OPS cluster and creates an aggregate datafile for Orca so
> > data
> > > > from
> > > > > several nodes can be put onto one graph along with totals and
> > > > > averages.
> > > > >
> > > > > Everything is working fine now except when I encounter a
> > "hole"
> > > > in
> > > > > the data from a node.  To prevent changing the number of
> > columns
> > > > and
> > > > > upsetting Orca I've been filling these holes with "0".  This
> > > > skews
> > > > > averages a little, but I didn't consider it significant until
> > I
> > > > saw
> > > > > what it did to counter values - definitely a Bad Thing(tm).
> > Does
> > > > > Orca accept something like the RRDTool "*UNKNOWN*" value?
> > > > >
> > > > > I guess I could just drop the entire line, but that seems
> > silly
> > > > since
> > > > > dropping a node for maintenance may be considered a SOP and
> > > > doesn't
> > > > > affect the cluster.  Any suggestions would be appreciated.
> > > > >
> > > > > jason
> > > > >
> > > > >                    Yahoo! Groups Sponsor
> > > > > [www.debticated.com]
> > > > >
> > > > >
> > > > Service.
> > > >
> > >
> > > __________________________________________________
> > > Do You Yahoo!?
> > > Get personalized email addresses from Yahoo! Mail - only $35
> > > a year!  http://personal.mail.yahoo.com/
> > >
> > >                    Yahoo! Groups Sponsor
> > > [www.debticated.com]
> > >
> > >
> Service.> --- ../orca-0.27b1/lib/Orca/SourceFile.pm      Thu Mar 29
> 15:25:41 2001
> > +++ lib/Orca/SourceFile.pm      Sun Jun 10 08:46:10 2001
> > @@ -524,11 +524,18 @@
> >      # not changing the original plot structure.  Look through each
> >      # element of each data and look for names appearing in the
> > column
> >      # description array.  If there is a match for this file, then
> > -    # convert the element to an index the @_ array where the data
> > will
> > -    # be pulled from.  If there is not a match, then see if the
> > -    # element matches a name from one of the other column names
> > from
> > -    # the same group.  In this case the data argument for this
> > file
> > -    # will not be used.
> > +    # convert the element to index the @_ array where the data
> > will be
> > +    # pulled from.  If there is not a match, then see if the
> > element
> > +    # matches a name from one of the other column names from the
> > same
> > +    # group.  In this case the data argument for this file will
> > not be
> > +    # used.
> > +
> > +    # To allow data gathering program to send unknown values to
> > Orca,
> > +    # check if any of the substituted values equals 'U' and return
> > +    # immediately the value 'U' to pass to RRDtool.  Keep track of
> > the
> > +    # substituted values.
> > +    my %substituted_values;
> > +
> >      my @datas;
> >      foreach my $one_data (@{$plot->{data}}) {
> >        push(@datas, [@$one_data]);
> > @@ -540,8 +547,9 @@
> >          my $element = $datas[$j][$k];
> >          my $pos;
> >          if (defined ($pos = $column_description{$element})) {
> > -          $datas[$j][$k]  = "\$_[$pos]";
> >            $match_one_data = 1;
> > +          $datas[$j][$k]  = "\$_[$pos]";
> > +          $substituted_values{"\$_[$pos]"} = 1;
> >          } elsif (defined
> > $group_column_names[$group_index]{$element}) {
> >            my $m = $old_i + 1;
> >            if ($required) {
> > @@ -580,10 +588,14 @@
> >      for (my $j=0; $j<@datas; ++$j) {
> >        my $data_expression;
> >        if (defined $datas[$j]) {
> > -        $data_expression = "@{$datas[$j]}";
> > -        my $sub_expr     = "sub { $data_expression }";
> > -        my $sub_expr_md5 = md5($data_expression);
> > -        my $eval_result  = $choose_data_sub_cache{$sub_expr_md5};
> > +        my $sub_expr = "sub {\n";
> > +        foreach my $s (sort keys %substituted_values) {
> > +          $sub_expr .= "  if (!defined($s) || $s eq 'U') {
> > return 'U';\n  }\n";
> > +        }
> > +        $data_expression  = "@{$datas[$j]}";
> > +        $sub_expr        .= "  $data_expression;\n}";
> > +        my $sub_expr_md5  = md5($data_expression);
> > +        my $eval_result   = $choose_data_sub_cache{$sub_expr_md5};
> >          unless (defined $eval_result) {
> >            $eval_result = 1;
> >            my $test_value;
> >
> 
> __________________________________________________
> Do You Yahoo!?
> Get personalized email addresses from Yahoo! Mail - only $35
> a year!  http://personal.mail.yahoo.com/
> 
>                    Yahoo! Groups Sponsor
> [Yahoo! Domains]  [Yahoo! Domains]
> 
> 
> 



More information about the Orca-dev mailing list