Mercurial > hg > nginx-quic
changeset 907:424636f52f44
$r->log_error()
author | Igor Sysoev <igor@sysoev.ru> |
---|---|
date | Tue, 12 Dec 2006 19:33:13 +0000 |
parents | a0310ac2814f |
children | 82adc19b4b4d |
files | src/http/modules/perl/nginx.xs |
diffstat | 1 files changed, 34 insertions(+), 0 deletions(-) [+] |
line wrap: on
line diff
--- a/src/http/modules/perl/nginx.xs +++ b/src/http/modules/perl/nginx.xs @@ -846,3 +846,37 @@ variable(r, name, value = NULL) ngx_http_perl_set_targ(vv->data, vv->len, 0); ST(0) = TARG; + + +void +log_error(r, err, msg) + CODE: + + ngx_http_request_t *r; + SV *err, *msg; + u_char *p; + STRLEN len; + ngx_err_t e; + + ngx_http_perl_set_request(r); + + err = ST(1); + + if (SvROK(err) && SvTYPE(SvRV(err)) == SVt_PV) { + err = SvRV(err); + } + + e = SvIV(err); + + msg = ST(2); + + if (SvROK(msg) && SvTYPE(SvRV(msg)) == SVt_PV) { + msg = SvRV(msg); + } + + p = (u_char *) SvPV(msg, len); + + ngx_log_error(NGX_LOG_ERR, r->connection->log, e, + "perl: %s", p); + + XSRETURN_EMPTY;