Re: Basic question: How to debug sieve scripts (e.g. via log file)?

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



With Cyrus 3.2+, we added a 'log' Sieve action, which allows the script to write messages to syslog().  This could be used to debug your script by logging each if/elsif/else, etc.  In order to use this action to need to:

require "vnd.cyrus.log";

log "start of script";

...


On 12/7/23 6:06 PM, Binarus wrote:
Dear all,

I am a long time user of Cyrus imapd, but from time to time, there are
new questions. The following might be embarrassing for me, but here we
go:

During the last days, I have put some time into trying to find out how
to debug sieve scripts as they are executed. One of my scripts doesn't
behave as expected; it would help if I could see in the log files what
the problem is.

However, I didn't find out how to make Cyrus imapd output something
sieve-related into the log files at all. I also didn't find a
standalone test program for sieve scripts in the Cyrus packages.

Starting cyrmaster in debug mode (-D) or activating the debug mode in
cyrus.conf didn't help either; no sieve-related messages were in the
terminal or in the log files.

In this case, I am on Debian bullseye with the stock Cyrus imapd 3.2.6.

I have realized that Debian bullseye offers a package called
"dovecot-sieve" which contains a program called "sieve-test". However,
I believe that the dovecot sieve utilities cannot be used to process
or test sieve scripts for Cyrus imapd; please correct me if I am wrong.

Could anybody please shortly explain how I could make Cyrus imapd put
sieve-related messages into the log files, or how I could debug sieve
scripts in general?

Thank you very much in advance, and best regards,

Binarus

P.S. I am aware that Cyrus' sieveshell throws errors if a script
contains syntax errors. But that's not what I am after. I'd like to
gain a little insight into how the scripts behave at runtime, or at
least see errors that occur as they are executed.

P.P.S. I know that my version is old. If somebody proposes an upgrade,
it would be very nice to know whether debugging sieve scripts is
possible with the proposed version. The reason is that upgrading to a
new version in Debian generally means compiling that version. For
various reasons, that is often a real hassle; I'd only like to do it
if I knew that the situation regarding sieve debugging has changed.

--
Kenneth Murchison
Senior Software Developer
Fastmail US LLC


------------------------------------------
Cyrus: Info
Permalink: https://cyrus.topicbox.com/groups/info/T9b1dfc1611f58964-M4517d59126887b04030fca09
Delivery options: https://cyrus.topicbox.com/groups/info/subscription




[Index of Archives]     [Cyrus SASL]     [Squirrel Mail]     [Asterisk PBX]     [Video For Linux]     [Photo]     [Yosemite News]     [gtk]     [KDE]     [Gimp on Windows]     [Steve's Art]
  Powered by Linux