Search Function Problem, FreeBSD (Solution)

Hello

I’ve figured out a solution to a little search problem I’ve had with RT
3.0.11 on FreeBSD.

Here are the system specifications.

FreeBSD 4.9-RELEASE-p5
Apache 1.3.31 (installed via Ports)
MySQL 4.0.16 (client & server installed via Ports)
Perl 5.8.2 (installed via Ports)
RT 3.0.11 (installed via Ports)
mod_perl 1.28 (installed via Ports)

The problem would occur when I would go to New Search and look for
tickets assigned to me. I would get an error, with the following at the
very top.

no connection to syslog available at
/usr/local/lib/perl5/site_perl/5.8.2/Log/Dispatch/Syslog.pm line 77

(I’ve removed all of the extra exception information. What you see
above is the “main” error at the very top of the error page.)

After performing a few searches on Google, I found the following useful
links.

http://lists.bestpractical.com/pipermail/rt-users/2004-July/024184.html
http://wiki.bestpractical.com/index.cgi?RT3OnSolaris

The wiki.bestpractical.com page explains that I should add “socket →
‘inet’” to my RT_Siteconfig.pm file at the @LogToSyslogConf parameter.
Unfortunately, I did not have this parameter since my config file is
from sometime around version 3.0.4.

The solution here was to run sdiff on my current RT_Config.pm and my
RT_SiteConfig.pm files and merged the changes in to a new file, which I
then copied to RT_SiteConfig.pm (after back it up, of course).

Since I had the @LogToSyslogConf parameter, I modified it per the
instructions on the wiki.bestpractical.com page.

@LogToSyslogConf = () unless (@LogToSyslogConf);

I added “socket => ‘inet’” to it, which reads as follows.

@LogToSyslogConf = ( socket => 'inet' ) unless
(@LogToSyslogConf);

After I reloaded Apache, I was unable to perform any kind of search,
including my bookmarked search, which worked fine previously.

It then dawned on me that it was simply having a difficult time trying
to reach syslogd, but was unable to do so because I locked down syslogd
so that it did not listen on any open ports.

In my /etc/rc.conf file, I had the following settings for syslogd.

syslogd_flags="-cc -ss"

The “-cc” turns off line compression and “-ss” tells syslogd not to open
any sockets. I changed “-ss” to “-s” which only prevents remote servers
from logging to this system. My /etc/rc.conf entry now reads as follows.

syslogd_flags="-cc -s"

I then restarted syslogd by killing the process and issuing the
following command

/usr/sbin/syslogd -cc -s

If you’re using FreeBSD 5.x, you would use the following command.

/etc/rc.d/syslogd restart

That will accomplish the same task, but I had to kill and restart the
process manually since RCng is not in FreeBSD 4.x.

I hope this shows up in any future Google searches because it would seem
this happens to FreeBSD users from time to time.

If you wish to reach me, please contact me off-list since I plan to
unsubscribe from rt-users sometime here very soon. I only got on the
list so I could post this information.

Hope this is useful!

Thanks.

Matt Barton
Webexcellence
PH: 317.423.3548 x22
TF: 800.808.6332 x22
FX: 317.423.8735
matt@webexc.com
www.webexc.com