You are viewing a plain text version of this content. The canonical link for it is here.
Posted to modperl@perl.apache.org by Oleg Shaikhatarov <ol...@allory.com> on 2002/08/16 11:52:45 UTC
Re: Change program name of httpd process
Stas Bekman wrote:
> Oleg Shaikhatarov wrote:
> > Hello, all!
> >
> > I need to change proctitle (called $PROGRAM_NAME or $0 in perl) of
> > httpd process from mod_perl. Simple change of $0 variable works well
> > for standalone perl program, but don't work under mod_perl.
> > I'm not sure if it's possible, but if anyone have an idea how to do
> > this please help.
>
> please give us some more details. What do you do and what doesn't
> work.
> e.g. Apache::Registry sets $0 to the location of the currently
> processed script. Why cannot you do the same?
Thanks for the response.
I need to change program name as it seen by "ps" command.
In other words "ps ax | grep http" gives something like:
21718 ? S 0:00 /usr/sbin/httpd -DHAVE_ACCESS -DHAVE_PROXY
21719 ? S 0:00 /usr/sbin/httpd -DHAVE_ACCESS -DHAVE_PROXY
21720 ? S 0:00 /usr/sbin/httpd -DHAVE_ACCESS -DHAVE_PROXY
23140 pts/4 S 0:00 grep http
But I need this output to be:
21718 ? S 0:00 /usr/sbin/httpd -DHAVE_ACCESS -DHAVE_PROXY
21719 ? S 0:00 my custom title here
21720 ? S 0:00 my another custom title here
23140 pts/4 S 0:00 grep http
And I need to change this from mod_perl.
Thanks,
Oleg Shaikhatarov
SWsoft Inc.
> __________________________________________________________________
> Stas Bekman JAm_pH ------> Just Another mod_perl Hacker
> http://stason.org/ mod_perl Guide ---> http://perl.apache.org
> mailto:stas@stason.org http://use.perl.org http://apacheweek.com
> http://modperlbook.org http://apache.org http://ticketmaster.com
>
>
Re: Change program name of httpd process
Posted by Stas Bekman <st...@stason.org>.
Oleg Shaikhatarov wrote:
> Stas Bekman wrote:
>
>>Oleg Shaikhatarov wrote:
>>
>>>Hello, all!
>>>
>>>I need to change proctitle (called $PROGRAM_NAME or $0 in perl) of
>>>httpd process from mod_perl. Simple change of $0 variable works well
>>>for standalone perl program, but don't work under mod_perl.
>>>I'm not sure if it's possible, but if anyone have an idea how to do
>>>this please help.
>>
>>please give us some more details. What do you do and what doesn't
>>work.
>>e.g. Apache::Registry sets $0 to the location of the currently
>> processed script. Why cannot you do the same?
>
>
> Thanks for the response.
>
> I need to change program name as it seen by "ps" command.
>
> In other words "ps ax | grep http" gives something like:
>
> 21718 ? S 0:00 /usr/sbin/httpd -DHAVE_ACCESS -DHAVE_PROXY
> 21719 ? S 0:00 /usr/sbin/httpd -DHAVE_ACCESS -DHAVE_PROXY
> 21720 ? S 0:00 /usr/sbin/httpd -DHAVE_ACCESS -DHAVE_PROXY
> 23140 pts/4 S 0:00 grep http
>
> But I need this output to be:
>
> 21718 ? S 0:00 /usr/sbin/httpd -DHAVE_ACCESS -DHAVE_PROXY
> 21719 ? S 0:00 my custom title here
> 21720 ? S 0:00 my another custom title here
> 23140 pts/4 S 0:00 grep http
>
> And I need to change this from mod_perl.
I understood that. You aren't saying *where* do you need it, that's why
I've asked for more details.
If you want to do that for mod_perl handlers, mod_perl sets $0 to the
httpd path during the perl_startup (see mod_perl.c:713). Therefore you
probably want to write a PerlChildInitHandler that overrides $0.
If you want the same behavior for Registry scripts, which always set $0
to the location of the currently processed script you have to subclass
Apache::RegistryNG and override the method set_script_name() which does
exactly that.
__________________________________________________________________
Stas Bekman JAm_pH ------> Just Another mod_perl Hacker
http://stason.org/ mod_perl Guide ---> http://perl.apache.org
mailto:stas@stason.org http://use.perl.org http://apacheweek.com
http://modperlbook.org http://apache.org http://ticketmaster.com