Roberto--<br>
<br>
Good work.<br>
<br>
A couple notes--<br>
* If one changes the --cfgfile option, then the svc.method<br>
file should be updated as well (it checks for the config file)...<br>
<br>
* We use the convention /etc/syslog-ng/ -&gt; /usr/local/etc here;<br>
If my memory serves correctly, I ran into a small issue between<br>
the builds (maybe it was sunfreeware and a compiled build?).&nbsp; <br>
In any event, the link was an easy workaround to make sure<br>
syslog-ng starts up (with a config file).<br>
<br>
* The other thing is, logrotation may need to be updated (logadm.conf) :<br>
/var/log/syslog -C 8 -P 'Sat May 28 08:10:00 2005' -a 'kill -HUP `cat /var/run/syslog.pid`'<br>
/var/adm/messages -C 4 -P 'Sat May 28 08:10:00 2005' -a 'kill -HUP `cat /var/run/syslog.pid`'<br>
to<br>
/var/log/syslog -C 8 -P 'Sat May 28 08:10:00 2005' -a '/usr/sbin/svcadm refresh syslog-ng`'<br>
/var/adm/messages -C 4 -P 'Sat May 28 08:10:00 2005' -a '/usr/sbin/svcadm refresh syslog-ng`'<br>
-----<br>
I'm not sure why Sun doesn't use svcadm to -HUP syslog...<br>
<br>
It should be noted, that feature with smf (as Sun touts as automatic healing) is that if you <br>
`pkill -9 syslog-ng` smf will :respawn: a new syslog-ng process. <br>
<br><div><span class="gmail_quote">On 6/2/05, <b class="gmail_sendername">Roberto Nibali</b> &lt;<a href="mailto:ratz@tac.ch">ratz@tac.ch</a>&gt; wrote:</span><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">
Hello,<br><br>Thanks for the excellent write-up.<br><br>&gt; After playing around with syslog-ng on Solaris 10 today, here are some<br>&gt; notes:<br>&gt; * As mentioned from Kenneth G, libol / syslog-ng should compile fine on
<br>&gt; Solaris 10, just make<br>&gt; sure&nbsp;&nbsp;--enable-full-dynamic&quot; in your configure for syslog-ng.<br>&gt; * You may also need to update your LD_LIBRARY_PATH and PATH&nbsp;&nbsp;(/usr/sfw &amp;<br>&gt; /opt/sfw ? )<br>&gt; * Service Management Facility (&quot;svcs&quot; &quot;svcadm&quot; &quot;svccfg&quot; commands)
<br>&gt; You can choose to run syslog-ng via the traditional /etc/init.d method<br>&gt; on solaris 10 and then wrap that start<br>&gt; and stop script with the solaris 10's smf facility, or&nbsp;&nbsp;the other option<br>&gt; is to do everything via the SMF facility.
<br>&gt; I've attached two files to do the later.<br>&gt;<br>&gt; The example files assume your syslog-ng.conf is ln /etc/syslog-ng/ -&gt;<br>&gt; /usr/local/etc/syslog-ng/<br>&gt; and the binary is /usr/local/sbin/syslog-ng:
<br>&gt; 1) Compile and install libol, syslog-ng.<br>&gt; 2) mkdir /usr/local/etc/syslog-ng; ln -s /usr/local/etc/syslog-ng<br>&gt; /etc/syslog-ng<br><br>You don't really need the symlink, just submit the config file using --cfgfile
<br>upon invocation of syslog-ng.<br><br>&gt; 3) copy your syslog-ng.conf to /etc/syslog-ng/<br>&gt; 4) cp svc.method.syslog-ng /lib/svc/method/syslog-ng<br>&gt; 5) cp svc.manifest.syslog-ng.xml /var/svc/manifest/system/syslog-
ng.xml<br>&gt; 6) `svccfg import /var/svc/manifest/system/syslog-ng.xml`<br>&gt;<br>&gt; Then to switch from standard syslog to syslog-ng:<br>&gt; 1) svcadm disable system-log<br>&gt; 2) svcadm enable syslog-ng<br>&gt;<br>
&gt; To revert back to solaris 10's default syslog, and have it running on<br>&gt; reboot:<br>&gt; 1) `svcadm disable syslog-ng`<br>&gt; 2) `svccfg delete syslog-ng`<br>&gt; 3) `svcadm enable system-log`<br><br>So why not make it a package then? You basically provided all the files and also
<br>the knowledge needed to create a package. The addition to the hybrid Makefile<br>could be something along the lines of (schematically):<br><br>------------------------------------------------------------------<br>PKGDIR = /var/spool/pkg
<br><br>package:&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;stamp_build<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;@echo &quot;\n\tYou can ignore the warnings from pkgmk\n&quot;<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;cd pkg; pkgmk -od ${PKGDIR}<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;@pkgname=syslog-ng<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;cd ${PKGDIR}; tar cf - $$pkgname | compress &gt; $${pkgname}.tar.Z
<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;rm -rf $$pkgname<br><br>stamp_build:&nbsp;&nbsp;&nbsp;&nbsp;configure<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;cd distrib; make<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;touch $@<br><br>config: configure<br>configure:<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;cd distrib; ./configure<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;touch $@<br><br>clean:<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;\rm -f stamp_*<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;cd distrib; make distclean<br>------------------------------------------------------------------<br><br>In the pkg subdir of the syslog-ng tar ball we could put the following files:<br><br>
##<br>## pkg/protoype<br>##<br>i postinstall<br>i preremove<br><br>!search ../misc ../distrib/ ../distrib/doc<br><br>d none /etc ? ? ?<br>d none /usr ? ? ?<br>d none /usr/local ? ? ?<br>d none /usr/local/sbin ? ? ?<br>d none /usr/share ? ? ?
<br>d none /usr/share/man ? ? ?<br># [a lot more entries]<br><br><br>!default 0755 sbin sbin<br>f none /usr/local/sbin/syslog-ng<br># [a lot more entries]<br><br><br>------------<br><br>##<br>## pkg/preremove<br>##<br>#!/bin/sh
<br><br>echo &quot;Warning: syslog-ng will be removed&quot;<br># here a kill of the syslog-ng process should be placed<br>svcadm enable system-log<br><br>------------<br><br>##<br>## pkg/postinstall<br>##<br># provided we have cp 
svc.method.syslog-ng in /lib/svc/method/syslog-ng<br># and svc.manifest.syslog-ng.xml in /var/svc/manifest/system/syslog-ng.xml<br>svccfg import /var/svc/manifest/system/syslog-ng.xml<br>svcadm disable system-log<br>svcadm enable syslog-ng
<br><br>So syslog-ng would be a hybrid package.<br><br>Best regards,<br>Roberto Nibali, ratz<br>--<br>-------------------------------------------------------------<br><a href="addr://Rathausgasse">addr://Rathausgasse</a> 31, CH-5001 Aarau&nbsp;&nbsp;tel://++41 62 823 9355
<br><a href="http://www.terreactive.com">http://www.terreactive.com</a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; fax://++41 62 823 9356<br>-------------------------------------------------------------<br>terreActive
AG&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
Wir sichern Ihren Erfolg<br>-------------------------------------------------------------<br></blockquote></div><br>