Good resources
* Sun's Comms Wiki* Messaging Server Forums
* Messaging and Comms mailing list
OS tuning
* make sure the noatime mount option is set to avoid extraneous metadata updatesInvalid sessions
There appears to be a race condition in the authentication code of Convergence that will give random users pop-up messages that say"Invalid session" and force them to log back in. A quick workaround until there is an official fix is to set Convergence's log.AUTH.level option to DEBUG and restart the application server (this hides the race condition). Once the official fix is in place, then set log.AUTH.level back to a normal level for production use, like ERROR.
iwcadmin -w $password -o log.ADMIN.level -v DEBUG
Convergence logging
The logging in convergence is fairly verbose by default and should be turned down unless you are actively troubleshooting . For normal operations I recommend making a file containing the following log settings:log.CONFIG.level INFO log.ADDRESS_BOOK.level ERROR log.ADMIN.level ERROR log.AUTH.level ERROR log.DEFAULT.level ERROR log.PROTOCOL.level ERROR log.PROXY_CAL.level ERROR log.PROXY_MAIL.level ERROR log.SIEVE.level ERROR
and then using:
iwcadmin -u admin -W /path/to/file/with/password -f /path/to/file/with/logging/levels
to apply the settings.
Application server tuning
Convergence only supports using Sun Application Server 9.1u2. I've noticed that the access log writes appear to be un-buffered by default. I've found that setting a value for the buffer size helps, but it appears to always use a 4k buffer if you set it to anything.Convergence monitoring
* Marcin Wiśnios has a nice blog entry on monitoring session data.* The Comms Wiki has a page of administrative tasks which discusses monitoring
When trying to debug some "invalid session" errors in Convergence I wanted to see the JSESSIONID cookies from users but didn't want to add extra overhead from turning back up the Convergence log levels. You can change the app server's access log format to log the cookie data. In my case, I also didn't want the "authorized user" data tracked by app server since in Convergence's case it is always NULL-AUTH-USER.
To do this I changed the access log format string from:
<access-log format="%client.name% %auth-user-name% %datetime% %request% %status% %response.length%" rotation-enabled="true" r
otation-interval-in-minutes="1440" rotation-policy="time" rotation-suffix="yyyyMMdd-HH'h'mm'm'ss's'"/>
to:
<access-log format="%client.name% %cookie.JSESSIONID% %datetime% %request% %status% %response.length%" rotation-enabled="true" r
otation-interval-in-minutes="1440" rotation-policy="time" rotation-suffix="yyyyMMdd-HH'h'mm'm'ss's'"/>
Spell checker hangs if language is en-us and language auto-detection is picked
The problem appears to be that the messaging server doesn't have an en-us language. I did the following steps to work around this:cd /opt/sun/comms/messaging*/lib
# make a link from english dictionary to english-us
ln -s en.hash en-us.hash
# change configutil so it is aware of the new language
cd ../bin
./configutil -o local.supportedlanguages -v '[en,de,fr,es,af,ca,da,nl,fi,gl,ga,is,it,no,pt,sv,eu,sq,cs,hu,pl,ro,hr,sk,sl,et,lv,lt,ru,bg,be,sr,mk,uk,el,tr,ar,he,yi,th,ja,ko,zh-CN,zh-TW,en-us]'
# restart http component
./stop-msg http
./start-msg http
cloud hosting
thiet ke website
There are 234 comments on this page. [Display comments]