Help talk:Tool Labs/Web
Rendered with Parsoid
Latest comment: 8 years ago by Avicennasis in topic Can't move logs?
portgrabber
I'm not seeing portgrabber(1) anywhere. Where is it, or what are the up-to-date instructions for running a non-PHP Web service? abartov (talk) 07:36, 14 December 2014 (UTC)
- There is no documentation for this. The source can be found here, i. e. basically connect to
/tmp/sock.portgranter
, send$tool\n
there, receive a port number back, connect to port 8282 on tools-webproxy, send.*\n$host:$port\n
there, leave the sockets open until your server terminates. Note that for non-PHP = Tomcat, there iswebservice tomcat start
. --Tim Landscheidt (talk) 07:53, 14 December 2014 (UTC)- Thanks, Tim! This was helpful. I now see portgrabber is reachable on the grid, even if not from the tool's command line. I ran into more difficulty running my server, but it does not appear to be related to portgrabber, but to the environment. abartov (talk) 21:27, 14 December 2014 (UTC)
- I'm sorry, I misread your question to mean "how does portgrabber work", not "how does one use portgrabber". It's rather pretty easy: Call it with
portgrabber $tool $command [$arg1…$argn]
, and it will grab a port number and call$command [$arg1…$argn] $port
(leaving the sockets open until$command
terminates). --Tim Landscheidt (talk) 21:44, 14 December 2014 (UTC)
- I'm sorry, I misread your question to mean "how does portgrabber work", not "how does one use portgrabber". It's rather pretty easy: Call it with
- Thanks, Tim! This was helpful. I now see portgrabber is reachable on the grid, even if not from the tool's command line. I ran into more difficulty running my server, but it does not appear to be related to portgrabber, but to the environment. abartov (talk) 21:27, 14 December 2014 (UTC)
Can't move logs?
Per the instructions, I've tried modifying the ~/.lighttpd.conf from
server.errorlog = "$home/error.log" server.breakagelog = "$home/error.log"
to
server.errorlog += "$home/logs/error.log" server.breakagelog += "$home/logs/error.log"
And I just get hit with
2015-08-03 02:03:30: (log.c.166) server started 2015-08-03 02:03:30: (log.c.118) opening errorlog '/data/project/avicbot/error.log$home/logs/error.log' failed: No such file or directory 2015-08-03 02:03:30: (server.c.1012) Opening errorlog failed. Going down.
my ~/logs directory does exist, but it seems it's trying to go to '/data/project/avicbot/error.log$home/logs/error.log' ? Is this expected behavior, or am I doing something wrong? #avicennasis@wikitech 02:16, 3 August 2015 (UTC)
- If you mean the section "Default configuration", that is an extract of the corresponding shell script
lighttpd-starter
where$home
will be replaced with the tool's home directory. So in your~/.lighttpd.conf
, you need to use explicit paths (e. g.,/data/project/avicbot/logs/error.log
) instead. - But your intention cannot be fulfilled: You cannot use
server.errorlog =
("Duplicate config variable in conditional 0 global: server.errorlog"), and usingserver.errorlog +=
will append the path to the default one and thus not work either. - If you are really committed to putting logs in
~/logs
, you could theoretically duplicate the whole web service set up and change theserver.errorlog
configuration to your liking, but for all practical purposes I would try to make peace with~/error.log
:-). --Tim Landscheidt (talk) 03:06, 3 August 2015 (UTC)
- I spoke too soon: If you use a construct like:
$HTTP["url"] =~ "^/" {
server.errorlog = "/data/project/avicbot/logs/error.log"
}
- you can make
lighttpd
output its log there, but the grid system will create~/error.log
nonetheless. However I would still recommend sticking to the "standard" layout. --Tim Landscheidt (talk) 03:19, 3 August 2015 (UTC)
- you can make
- Ah well. I'll learn to get used to it, it seems. Thank you for the reply, though. #avicennasis@wikitech 07:18, 4 August 2015 (UTC)