Alan’s Blogometer

Alan Gutierrez blogs on software, social networks, and himself.

Subscrive Via RSS Feed

Troubleshooting ljubljana.blogometer.com

Test Pattern

Test Pattern by Jen.

About two months ago, my funding for a dedicated Think New Orleans server came to an end. Think New Orleans had been running well for a while, so I thought it wouldn’t matter much to consolidate it with the server that hosts this blog, ljubljana.blogometer.com.

Neither website gets large amounts of traffic. Think New Orleans receives 500 unique visitors a day on a good day. I can’t imagine that all the neighborhood blogs, the New Orleans Wiki, and my personal/professional blog together attract more than 2000 unique visitors a day. Even a modest dedicated server should be able to handle that much traffic, unless something is terribly wrong.

The server also runs postfix and dovecot (IMAP). It serves up the bloggers listserv using GNU Mailmain. It acts as a Subversion repository through Apache. None of these applications concern me. They are all very well written applications. The mail and Subversion services serve only a single user, me.

The Think New Orleans web menagerie includes WordPress, MediaWiki and Instiki. WordPress and Mediawiki are PHP applications running from Apache. Instiki is in a Ruby Webrick web server which is accessed via Apache mod_proxy.

Neighborhood blogs such as Northwest Carrollton and Think New Orleans itself are run in WordPress. There are two flavors of New Orleans Wiki. The Mediawiki version and the Instiki version. The latter is getting more use these days. It contains the definitive List of New Orleans Bloggers and the resources created by CHAT.

There is an instance of Jetty that is rarely visited that runs a few simple servlets that is also accessed via Apache mod_proxy. This is very low traffic and the Servlets are my own. The unconference signup servlet is an example. It writes a web form to file.

I run a script from cron that requests http://blogometer.com/. If it takes more than three seconds to serve, I kill all httpd processes and restart Apache.

Please have a look at the crash reports and tell me what you think.

GNU Mailman

Every time I create a new listserv, I need to remember how to do it. I’m going to write about it in Blogometer so I don’t have to think so hard next time.

Adding a new GNU Mailman listserv.


[alan@~]$ cd /usr/lib/mailman
[alan@ljubljana mailman]$ sudo ./bin/newlist barcampnola@thinknola.com
Enter the email of the person running the list: alan@thinknola.com
Initial barcampnola password:
To finish creating your mailing list, you must edit your /etc/aliases (or
equivalent) file by adding the following lines, and possibly running the
`newaliases’ program:
## barcampnola mailing listbarcampnola:              “|/usr/lib/mailman/mail/mailman post barcampnola”
barcampnola-admin:        “|/usr/lib/mailman/mail/mailman admin barcampnola”
barcampnola-bounces:      “|/usr/lib/mailman/mail/mailman bounces barcampnola”
barcampnola-confirm:      “|/usr/lib/mailman/mail/mailman confirm barcampnola”
barcampnola-join:         “|/usr/lib/mailman/mail/mailman join barcampnola”
barcampnola-leave:        “|/usr/lib/mailman/mail/mailman leave barcampnola”
barcampnola-owner:        “|/usr/lib/mailman/mail/mailman owner barcampnola”
barcampnola-request:      “|/usr/lib/mailman/mail/mailman request barcampnola”
barcampnola-subscribe:    “|/usr/lib/mailman/mail/mailman subscribe barcampnola”
barcampnola-unsubscribe:  “|/usr/lib/mailman/mail/mailman unsubscribe barcampnola”

Hit enter to notify barcampnola owner…

[alan@ljubljana mailman]$

Then you cut and paste the aliases into /etc/mailman/aliases


[alan@ljubljana mailman]$ sudo /usr/bin/newaliases
[alan@ljubljana mailman]$ sudo ./bin/withlist -l -r fix_url barcampnola

Diagnosing Server Overload

My server, ljubljana.blogometer.com, will sometimes hang after receiving too many requests. I don’t want it to keep me from getting in via ssh, so I’ve written a rather drastic shell program to monitor the server. It fetches the blogometer.com home page using curl. If it takes longer than three seconds, it blocks port 80. This is run by cron every minute. The script will write out the output of the programs ps ax and free. I’ve not been able to figure out what’s really causing the server to choke with that output so I’ve added top -n 5 -b and tail -n 500 /var/log/httpd/access_log. I’m open to any suggestions of commands to add to this snapshot.

Lost Post

The last post I wrote, something about citizen journalists, has been lost in the recent exodous from the old server. Maitri left a comment, and her comment was lost as well. My apologies.