[Orca-dev] Re: unknown value
Jason D. Kelleher
kelleher944 at yahoo.com
Mon Jun 11 11:05:19 PDT 2001
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/
More information about the Orca-dev
mailing list