Better connection logging
parent
82b2f36416
commit
78008e9904
|
@ -2,10 +2,10 @@
|
||||||
! See http://factorcode.org/license.txt for BSD license.
|
! See http://factorcode.org/license.txt for BSD license.
|
||||||
USING: continuations destructors kernel math math.parser
|
USING: continuations destructors kernel math math.parser
|
||||||
namespaces parser sequences strings prettyprint debugger
|
namespaces parser sequences strings prettyprint debugger
|
||||||
quotations combinators logging calendar assocs
|
quotations combinators logging calendar assocs present
|
||||||
fry accessors arrays io io.sockets io.encodings.ascii
|
fry accessors arrays io io.sockets io.encodings.ascii
|
||||||
io.sockets.secure io.files io.streams.duplex io.timeouts
|
io.sockets.secure io.files io.streams.duplex io.timeouts
|
||||||
io.encodings threads concurrency.combinators
|
io.encodings threads make concurrency.combinators
|
||||||
concurrency.semaphores concurrency.flags
|
concurrency.semaphores concurrency.flags
|
||||||
combinators.short-circuit ;
|
combinators.short-circuit ;
|
||||||
IN: io.servers.connection
|
IN: io.servers.connection
|
||||||
|
@ -56,11 +56,17 @@ GENERIC: handle-client* ( threaded-server -- )
|
||||||
[ secure>> >secure ] [ insecure>> >insecure ] bi
|
[ secure>> >secure ] [ insecure>> >insecure ] bi
|
||||||
[ resolve-host ] bi@ append ;
|
[ resolve-host ] bi@ append ;
|
||||||
|
|
||||||
LOG: accepted-connection NOTICE
|
: accepted-connection ( remote local -- )
|
||||||
|
[
|
||||||
|
[ "remote: " % present % ", " % ]
|
||||||
|
[ "local: " % present % ]
|
||||||
|
bi*
|
||||||
|
] "" make
|
||||||
|
\ accepted-connection NOTICE log-message ;
|
||||||
|
|
||||||
: log-connection ( remote local -- )
|
: log-connection ( remote local -- )
|
||||||
|
[ accepted-connection ]
|
||||||
[ [ remote-address set ] [ local-address set ] bi* ]
|
[ [ remote-address set ] [ local-address set ] bi* ]
|
||||||
[ 2array accepted-connection ]
|
|
||||||
2bi ;
|
2bi ;
|
||||||
|
|
||||||
M: threaded-server handle-client* handler>> call ;
|
M: threaded-server handle-client* handler>> call ;
|
||||||
|
|
|
@ -2,7 +2,7 @@
|
||||||
! See http://factorcode.org/license.txt for BSD license.
|
! See http://factorcode.org/license.txt for BSD license.
|
||||||
USING: accessors kernel symbols namespaces continuations
|
USING: accessors kernel symbols namespaces continuations
|
||||||
destructors io.sockets sequences summary calendar delegate
|
destructors io.sockets sequences summary calendar delegate
|
||||||
system vocabs.loader combinators ;
|
system vocabs.loader combinators present ;
|
||||||
IN: io.sockets.secure
|
IN: io.sockets.secure
|
||||||
|
|
||||||
SYMBOL: secure-socket-timeout
|
SYMBOL: secure-socket-timeout
|
||||||
|
@ -43,6 +43,8 @@ TUPLE: secure addrspec ;
|
||||||
|
|
||||||
C: <secure> secure
|
C: <secure> secure
|
||||||
|
|
||||||
|
M: secure present addrspec>> present " (secure)" append ;
|
||||||
|
|
||||||
CONSULT: inet secure addrspec>> ;
|
CONSULT: inet secure addrspec>> ;
|
||||||
|
|
||||||
M: secure resolve-host ( secure -- seq )
|
M: secure resolve-host ( secure -- seq )
|
||||||
|
|
|
@ -5,8 +5,8 @@ USING: generic kernel io.backend namespaces continuations
|
||||||
sequences arrays io.encodings io.ports io.streams.duplex
|
sequences arrays io.encodings io.ports io.streams.duplex
|
||||||
io.encodings.ascii alien.strings io.binary accessors destructors
|
io.encodings.ascii alien.strings io.binary accessors destructors
|
||||||
classes debugger byte-arrays system combinators parser
|
classes debugger byte-arrays system combinators parser
|
||||||
alien.c-types math.parser splitting grouping
|
alien.c-types math.parser splitting grouping math assocs summary
|
||||||
math assocs summary system vocabs.loader combinators ;
|
system vocabs.loader combinators present ;
|
||||||
IN: io.sockets
|
IN: io.sockets
|
||||||
|
|
||||||
<< {
|
<< {
|
||||||
|
@ -40,7 +40,14 @@ TUPLE: local path ;
|
||||||
: <local> ( path -- addrspec )
|
: <local> ( path -- addrspec )
|
||||||
normalize-path local boa ;
|
normalize-path local boa ;
|
||||||
|
|
||||||
TUPLE: inet4 host port ;
|
M: local present path>> "Unix domain socket: " prepend ;
|
||||||
|
|
||||||
|
TUPLE: abstract-inet host port ;
|
||||||
|
|
||||||
|
M: abstract-inet present
|
||||||
|
[ host>> ":" ] [ port>> number>string ] bi 3append ;
|
||||||
|
|
||||||
|
TUPLE: inet4 < abstract-inet ;
|
||||||
|
|
||||||
C: <inet4> inet4
|
C: <inet4> inet4
|
||||||
|
|
||||||
|
@ -81,7 +88,7 @@ M: inet4 parse-sockaddr
|
||||||
>r dup sockaddr-in-addr <uint> r> inet-ntop
|
>r dup sockaddr-in-addr <uint> r> inet-ntop
|
||||||
swap sockaddr-in-port ntohs <inet4> ;
|
swap sockaddr-in-port ntohs <inet4> ;
|
||||||
|
|
||||||
TUPLE: inet6 host port ;
|
TUPLE: inet6 < abstract-inet ;
|
||||||
|
|
||||||
C: <inet6> inet6
|
C: <inet6> inet6
|
||||||
|
|
||||||
|
@ -255,7 +262,7 @@ HOOK: addrinfo-error io-backend ( n -- )
|
||||||
|
|
||||||
GENERIC: resolve-host ( addrspec -- seq )
|
GENERIC: resolve-host ( addrspec -- seq )
|
||||||
|
|
||||||
TUPLE: inet host port ;
|
TUPLE: inet < abstract-inet ;
|
||||||
|
|
||||||
C: <inet> inet
|
C: <inet> inet
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue