Literal works when there is only one literal percent sign; last I checked,
you cannot use it twice in the same value. You can use "%%{::}{::hostname}"
to return "%{::hostname}" - the middle "%{::}" returns nothing and splits
the first percent from the variable name at the end, preventing
interpolation there.
The use of the two semi colons was to avoid a scoping issue that cropped up
as a regression around the puppet 4.3 timeframe that "%%{}{::hostname}"
would run into. It is possible this has been fixed by now and the
naked semi colons in the braces are optional, but I have not tested this
with the latest version of puppet myself.
On Monday, June 6, 2016, Christopher Wood <[email protected]>
wrote:
> I ran into this too, use the literal function.
>
> $ grep -rh literal hieradata/
> testing::cwood1::param3: "%{literal('%')}{::hostname}"
> testing::cwood1::param3: "%{literal('%')}{::hostname}"
>
>
> https://docs.puppet.com/hiera/3.1/variables.html#the-literal-lookup-function
>
> On Mon, Jun 06, 2016 at 06:20:46AM -0700, Simon wrote:
> > Hi all
> > does anyone know how i can escape %{ in hiera without it trying to
> convert
> > to variable?
> > i want to add the following to configure a syslog filter for logstash
> >
> > match => { "message" =>
> > "<%{POSINT:syslog_pri}>%{SYSLOGTIMESTAMP:syslog_timestamp}
> > %{SYSLOGHOST:syslog_hostname}
> > %{DATA:syslog_program}(?:\[%{POSINT:syslog_pid}\])?:
> > %{GREEDYDATA:syslog_message}"}
> >
> > problem is it will try and convert to variables so only shows the
> > following on the server
> >
> > match => { "message" => "<> (?:\[\])?: "}
> >
> > i have tried all the methods i can think of, any help would be
> > appreciated.
> >
> > cheers
> >
> > S
> >
> > --
> > You received this message because you are subscribed to the Google
> Groups
> > "Puppet Users" group.
> > To unsubscribe from this group and stop receiving emails from it,
> send an
> > email to [1][email protected] <javascript:;>.
> > To view this discussion on the web visit
> > [2]
> https://groups.google.com/d/msgid/puppet-users/c1d3661a-ee9c-4460-bb13-be23b210ddb7%40googlegroups.com
> .
> > For more options, visit [3]https://groups.google.com/d/optout.
> >
> > References
> >
> > Visible links
> > 1. mailto:[email protected] <javascript:;>
> > 2.
> https://groups.google.com/d/msgid/puppet-users/c1d3661a-ee9c-4460-bb13-be23b210ddb7%40googlegroups.com?utm_medium=email&utm_source=footer
> > 3. https://groups.google.com/d/optout
>
> --
> You received this message because you are subscribed to the Google Groups
> "Puppet Users" group.
> To unsubscribe from this group and stop receiving emails from it, send an
> email to [email protected] <javascript:;>.
> To view this discussion on the web visit
> https://groups.google.com/d/msgid/puppet-users/20160606134212.GA8045%40iniquitous.heresiarch.ca
> .
> For more options, visit https://groups.google.com/d/optout.
>
--
Rob Nelson
[email protected]
--
You received this message because you are subscribed to the Google Groups
"Puppet Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
To view this discussion on the web visit
https://groups.google.com/d/msgid/puppet-users/CAC76iT8Dr3535kH77c0S-11XB%2Bb%3DgY64XbXCgaeGo3y-XMiATg%40mail.gmail.com.
For more options, visit https://groups.google.com/d/optout.