comparison src/http/modules/perl/nginx.xs @ 907:424636f52f44

$r->log_error()
author Igor Sysoev <igor@sysoev.ru>
date Tue, 12 Dec 2006 19:33:13 +0000
parents 26c3e48b9996
children f01e6664f9be
comparison
equal deleted inserted replaced
906:a0310ac2814f 907:424636f52f44
844 } 844 }
845 845
846 ngx_http_perl_set_targ(vv->data, vv->len, 0); 846 ngx_http_perl_set_targ(vv->data, vv->len, 0);
847 847
848 ST(0) = TARG; 848 ST(0) = TARG;
849
850
851 void
852 log_error(r, err, msg)
853 CODE:
854
855 ngx_http_request_t *r;
856 SV *err, *msg;
857 u_char *p;
858 STRLEN len;
859 ngx_err_t e;
860
861 ngx_http_perl_set_request(r);
862
863 err = ST(1);
864
865 if (SvROK(err) && SvTYPE(SvRV(err)) == SVt_PV) {
866 err = SvRV(err);
867 }
868
869 e = SvIV(err);
870
871 msg = ST(2);
872
873 if (SvROK(msg) && SvTYPE(SvRV(msg)) == SVt_PV) {
874 msg = SvRV(msg);
875 }
876
877 p = (u_char *) SvPV(msg, len);
878
879 ngx_log_error(NGX_LOG_ERR, r->connection->log, e,
880 "perl: %s", p);
881
882 XSRETURN_EMPTY;