[Rd] Capturing all warnings (with messages)

From: Jon Clayden <j.clayden_at_ucl.ac.uk>
Date: Wed, 04 Feb 2009 12:59:59 +0000

Dear all,

For an open-source project that I'm working on (1), which uses R for all its heavy lifting but includes a wrapper shell script, I was hoping to find a way to capture all warnings (and, in fact, errors too), and handle them in my own way. I realise I can do this for a single expression using something like:

> f <- function(w) print(w$message)
> withCallingHandlers(warning("Test"),warning=f)
[1] "Test"
Warning message:
In withCallingHandlers(warning("Test"), warning = f) : Test

But I would like to capture all warnings, globally. The "warning.expression" option doesn't seem to allow an argument, and I can't seem to use "last.warning" to get at the message either:

> g <- function() print(last.warning$message)
> options(warning.expression=quote(g()))
> warning("Test2")

NULL Could anyone tell me whether there's a way to do this, please? An old thread on this topic seemed to go unresolved (2), and I've skimmed RNEWS and I don't see anything about this since then.

> sessionInfo()

R version 2.8.1 (2008-12-22)


attached base packages:
[1] stats graphics grDevices utils datasets splines methods [8] base

other attached packages:
[1] tractor.session_1.0.0 tractor.base_1.0.3 tractor.nt_1.0.2

loaded via a namespace (and not attached): [1] tools_2.8.1


(1) http://code.google.com/p/tractor/
(2) http://finzi.psych.upenn.edu/R/Rhelp02/archive/61872.html

Jonathan D. Clayden, Ph.D.
Research Fellow
Radiology and Physics Unit
UCL Institute of Child Health
30 Guilford Street
United Kingdom

t | +44 (0)20 7905 2708
f | +44 (0)20 7905 2358
w | www.homepages.ucl.ac.uk/~sejjjd2/

R-devel_at_r-project.org mailing list
Received on Wed 04 Feb 2009 - 14:11:10 GMT

Archive maintained by Robert King, hosted by the discipline of statistics at the University of Newcastle, Australia.
Archive generated by hypermail 2.2.0, at Thu 05 Feb 2009 - 01:30:19 GMT.

Mailing list information is available at https://stat.ethz.ch/mailman/listinfo/r-devel. Please read the posting guide before posting to the list.

list of date sections of archive