Hi, Jeff:
Thanks for the detail explanation. I can map the logical node using the ":"
in the name, but I have problem configuring it. I am using it this way:
===
Exec map xxxx collector-sit:ets:txn:ord:test.log
submit multiconfig 'collector-sit:ets:txn:ord:test.log: collectorSource( 16006
) | text("/tmp/test.log")'
===
Getting an syntax error when I trying to do multiconfig. I tried quoting the
node name, but it doesn't seem to work. If they allow us to create an logical
node with ":" in the name they should provide us a way to configure it as well.
I will take a look at their grammar in the mean time
Thanks
Vic
-----Original Message-----
From: Jeff Hansen [mailto:[email protected]]
Sent: Thursday, September 15, 2011 8:18 AM
To: [email protected]
Subject: Re: Restricted character in logical node name
Are you by any chance using it in somewhere in a config or multiconfig without
quoting it?
specifically, if you were to say
config host someSource logicalSink(bac:host:accee.log)
the parser would treat the logical name as a function rather than a string
literal and colons aren't allowed in function names.
Functions use identifiers:
Identifier
: Letter (Letter|JavaIDDigit|'.'|'-'|'_')*
;
However, when you're mapping the host to a logical name, config arguments are
allowed to have colons Argument
: (Letter|JavaIDDigit|':'|'.'|'-'|'_')+
;
So I assume you'd be fine with a line like exec map somehost bac:host:accee.log
Without looking through the code I don't know if there are further constraints,
but digging through the antlr syntax in FlumeShell.g and FlumeDeploy.g help me
understand the config grammar a lot better.
On Wed, Sep 14, 2011 at 6:56 PM, Huang, Zijian(Victor)
<[email protected]> wrote:
> Hi, Guys:
> Is there a list of characters we can't not use in the logical
> agent/collector's name. I tried "bac:host:accee.log", it seems Flume
> has trouble dealing with ":"
>
> Thanks
>
> Victor Huang
>
>
>