Perlbal::Manual::Debugging - Online Linux Manual PageSection : 3
Updated : 2021-01-25
Source : perl v5.32.1
Note : User Contributed Perl Documentation
NAMEPerlbal::Manual::Debugging − Debugging Perlbal
VERSIONPerlbal 1.78.
DESCRIPTIONPerlbal has two ways of debugging. One of them is through a management console; the other is through debugging messages.
Debugging in a consoleYou'll need to set up a management service and use it to dump all the information you require. The comprehensive documentation on this process can be found at Perlbal::Manual::Management.
Debugging messagesYou can control the ammount of debugging messages Perlbal dumps by setting the environment variable PERLBAL_DEBUG to a value between 0 and 4: PERLBAL_DEBUG = 0 # no debug
PERLBAL_DEBUG = 4 # debug everything
Debug level 1 You can activate basic debug by setting PERLBAL_DEBUG to 1: PERLBAL_DEBUG = 1
The following debugging messages are turned on: • When a connection to a backend is closed, Perlbal::BackendHTTP prints Backend $self is done; closing... • When a connection to a backend is killed, Perlbal::ClientProxy prints Client ($self) closing backend ($backend) • When an HTTP request fails to be parsed, Perlbal::HTTPHeaders prints HTTP parse failure: $reason • When the connection is promoted to SSL, Perlbal::TCPListener prints .. socket upgraded to SSL! Debug level 2 By setting the debug level to 2 you'll get all the messages from level 1. PERLBAL_DEBUG = 2
You will also get a few others: • When a connection to a backend is opened and ready to be written to, Perlbal::BackendHTTP prints Backend $self is writeable! • When a response is about to be handled, Perlbal::BackendHTTP prints BackendHTTP: handle_response • When a backend is ready to be read from, Perlbal::BackendHTTP prints Backend $self is readable! • When there's an error with the connection to the backend, Perlbal::BackendHTTP prints BACKEND event_err • Whenever we're determining if we should be sending keep-alive header information back to the client, Perlbal::ClientHTTPBase prints ClientHTTPBase::setup_keepalive($self) • Whenever the client is ready for more of its file, Perlbal::ClientHTTPBase prints REPROXY SSL done • Right after we've read a chunk of a file and when a reproxy request is about to be sent, Perlbal::ClientHTTPBase prints REPROXY Sent: $sent • When we've written all data in the queue (and are about to stop waiting for write notifications), Perlbal::ClientHTTPBase prints All writing done to $self • Whenever a client proxy is about to be closed, Perlbal::ClientProxy prints Perlbal::ClientProxy closed, followed by a possible again and a possible saying $reason • When a client has disconnected, Perlbal::ClientProxy prints ClientProxy::client_disconnected • When a backend requests a client of a high priority request and the client is available, ‟Service” in Perlbal prints Got from fast queue, in front of $backlog others • When a backend requests a client of a normal priority request and the client is available, ‟Service” in Perlbal prints Backend requesting client, got PRIORITY = $cp−{fd}.> • When a backend requests a client of a low priority request and the client is available, ‟Service” in Perlbal prints Backend requesting client, got low priority = $cp−{fd}.> • When header are being read, Perlbal::Socket prints Perlbal::Socket::read_headers($self) is_res=$is_res Debug level 3 PERLBAL_DEBUG = 3
By setting the debug level to 3 you'll get all the messages from level 1 and 2 plus the following: • Right before response headers are written to the client, Perlbal::BackendHTTP prints writing response headers to client • As we're writing to the client, Perlbal::BackendHTTP prints content_length=VALUE and remain=VALUE, where the values are undef if they are not defined • If we're done writing to the client, Perlbal::BackendHTTP prints done. detaching. • Whenever we're determining if we should be sending keep-alive header information back to the client, Perlbal::ClientHTTPBase prints service's persist_client = $persist_client • While determining if we should be sending keep-alive header information back to the client, if we were sent content−length or it's a head request, as we're doing a keep alive Perlbal::ClientHTTPBase prints doing keep−alive to client • If we're not sending keep-alive header information back ot the client, Perlbal::ClientHTTPBase prints doing connection: close • Right after we've finished sending all of the results to the user, Perlbal::ClientProxy prints ClientProxy::backend_finished • When we've sent a response to a user fully and we need to reset state, Perlbal::ClientProxy prints ClientProxy::http_response_sent −− resetting state • When we're writing a response to a client, Perlbal::ClientProxy prints ClientProxy::event_write • After writing a response to a client, if it is still connected and we're triggering trigger our backend to keep reading, Perlbal::ClientProxy prints unstalling backend • When reading a request, Perlbal::ClientProxy prints ClientProxy::event_read • When reading a request and just before we read the headers, Perlbal::ClientProxy prints no headers. reading. • When reading a request, if we're not buffering to disk or we're no longer reading, as we disable reads, Perlbal::ClientProxy prints disabling reads. • As we're reading, Perlbal::ClientProxy prints reading $read_size bytes (VALUE bytes remain), where VALUE bytes remain can be <undef> • After each read, Perlbal::ClientProxy prints read $len bytes • After we finished reading the request, Perlbal::ClientProxy prints done_reading = $done_reading, backend = BACKEND, where BACKEND can be undef • When we send the headers to the backend and it responds before we're done reading from the client, further reads from the client are discarded; in this situation Perlbal::ClientProxy prints already responded.. If the client continues to send data, Perlbal::ClientProxy prints already responded [2]. and then gives up on reading • After reading, and having a backend available where we can write to, just before we do, Perlbal::ClientProxy prints got a backend. sending write to it. • After reading, if there's no backend available, Perlbal::ClientProxy prints no backend. read_ahead = $self−{read_ahead}.> • If we know we've already started spooling a file to disk and we're about to continue doing so, Perlbal::ClientProxy prints bureason = $self−{bureason}> • If a backend wasn't available and we're about to request one, Perlbal::ClientProxy prints finally requesting a backend • When we're trying to read headers and the client has disconnected, Perlbal::Socket prints client disconnected • If we need to remove a trailing \r\n from the headers, Perlbal::Socket prints throwing away leading \r\n • If we've read a packet with headers and by the end of it we can't find the end of them, Perlbal::Socket prints can't find end of headers • Once we've read some headers, Perlbal::Socket prints pre−parsed headers: [$hstr] • After reading headers, if there's additional content that we've read, we push it back; when we do so, Perlbal::Socket prints pushing back $len bytes after header • If we got bogus headers, and right before we close the connection due to a parsing failure, Perlbal::Socket prints bogus headers • If we got valid headers, Perlbal::Socket prints got valid headers • If we're reading buffered data from a client, Perlbal::Socket prints draining readbuf from $self to $dest: [$$bref] Debug level 4 By setting the debug level to 4 you get all the messages from levels 1 to 3. Plus, write is redefined so that whenever write is called it first prints write($self, <$clen>"$content") from ($pkg, $filename, $line). PERLBAL_DEBUG = 4
SEE ALSOPerlbal::Manual::Configuration, Perlbal::Manual::Management. 0
Johanes Gumabo
Data Size : 30,438 byte
man-Perlbal::Manual::Debugging.3pmBuild : 2024-12-05, 20:55 :
Visitor Screen : x
Visitor Counter ( page / site ) : 4 / 174,823
Visitor ID : :
Visitor IP : 18.119.117.122 :
Visitor Provider : AMAZON-02 :
Provider Position ( lat x lon ) : 39.962500 x -83.006100 : x
Provider Accuracy Radius ( km ) : 1000 :
Provider City : Columbus :
Provider Province : Ohio , : ,
Provider Country : United States :
Provider Continent : North America :
Visitor Recorder : Version :
Visitor Recorder : Library :
Online Linux Manual Page : Version : Online Linux Manual Page - Fedora.40 - march=x86-64 - mtune=generic - 24.12.05
Online Linux Manual Page : Library : lib_c - 24.10.03 - march=x86-64 - mtune=generic - Fedora.40
Online Linux Manual Page : Library : lib_m - 24.10.03 - march=x86-64 - mtune=generic - Fedora.40
Data Base : Version : Online Linux Manual Page Database - 24.04.13 - march=x86-64 - mtune=generic - fedora-38
Data Base : Library : lib_c - 23.02.07 - march=x86-64 - mtune=generic - fedora.36
Very long time ago, I have the best tutor, Wenzel Svojanovsky . If someone knows the email address of Wenzel Svojanovsky , please send an email to johanes_gumabo@yahoo.co.id .
If error, please print screen and send to johanes_gumabo@yahoo.co.id
Under development. Support me via PayPal.
ERROR : Need New Coding : (parse_manual_page_|249|Perlbal::Manual::Debugging.3pm|36/37|el══─{─══.|.el══─{─══. ds -- \|\(em\|
) (htmlprn|149|Perlbal::Manual::Debugging.3pm|36/37|.el══─{─══. ds -- — |.el══─{─══. ds -- \|\(em\|
) (parse_manual_page_|249|Perlbal::Manual::Debugging.3pm|43|br══─}─══|'br══─}─══
) (htmlprn|149|Perlbal::Manual::Debugging.3pm|43|'br══─}─══ |'br══─}─══
)