Initial commit of OpenSPARC T2 design and verification files.
[OpenSPARC-T2-DV] / tools / src / nas,5.n2.os.2 / lib / python / html / python / lib / node350.html
CommitLineData
86530b38
AT
1<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
2<html>
3<head>
4<link rel="STYLESHEET" href="lib.css" type='text/css' />
5<link rel="SHORTCUT ICON" href="../icons/pyfav.png" type="image/png" />
6<link rel='start' href='../index.html' title='Python Documentation Index' />
7<link rel="first" href="lib.html" title='Python Library Reference' />
8<link rel='contents' href='contents.html' title="Contents" />
9<link rel='index' href='genindex.html' title='Index' />
10<link rel='last' href='about.html' title='About this document...' />
11<link rel='help' href='about.html' title='About this document...' />
12<link rel="next" href="node351.html" />
13<link rel="prev" href="node349.html" />
14<link rel="parent" href="node345.html" />
15<link rel="next" href="node351.html" />
16<meta name='aesop' content='information' />
17<title>6.29.5.5 SocketHandler</title>
18</head>
19<body>
20<DIV CLASS="navigation">
21<div id='top-navigation-panel' xml:id='top-navigation-panel'>
22<table align="center" width="100%" cellpadding="0" cellspacing="2">
23<tr>
24<td class='online-navigation'><a rel="prev" title="6.29.5.4 TimedRotatingFileHandler"
25 href="node349.html"><img src='../icons/previous.png'
26 border='0' height='32' alt='Previous Page' width='32' /></A></td>
27<td class='online-navigation'><a rel="parent" title="6.29.5 Handler Objects"
28 href="node345.html"><img src='../icons/up.png'
29 border='0' height='32' alt='Up One Level' width='32' /></A></td>
30<td class='online-navigation'><a rel="next" title="6.29.5.6 DatagramHandler"
31 href="node351.html"><img src='../icons/next.png'
32 border='0' height='32' alt='Next Page' width='32' /></A></td>
33<td align="center" width="100%">Python Library Reference</td>
34<td class='online-navigation'><a rel="contents" title="Table of Contents"
35 href="contents.html"><img src='../icons/contents.png'
36 border='0' height='32' alt='Contents' width='32' /></A></td>
37<td class='online-navigation'><a href="modindex.html" title="Module Index"><img src='../icons/modules.png'
38 border='0' height='32' alt='Module Index' width='32' /></a></td>
39<td class='online-navigation'><a rel="index" title="Index"
40 href="genindex.html"><img src='../icons/index.png'
41 border='0' height='32' alt='Index' width='32' /></A></td>
42</tr></table>
43<div class='online-navigation'>
44<b class="navlabel">Previous:</b>
45<a class="sectref" rel="prev" href="node349.html">6.29.5.4 TimedRotatingFileHandler</A>
46<b class="navlabel">Up:</b>
47<a class="sectref" rel="parent" href="node345.html">6.29.5 Handler Objects</A>
48<b class="navlabel">Next:</b>
49<a class="sectref" rel="next" href="node351.html">6.29.5.6 DatagramHandler</A>
50</div>
51<hr /></div>
52</DIV>
53<!--End of Navigation Panel-->
54
55<H3><A NAME="SECTION0082955000000000000000">
566.29.5.5 SocketHandler</A>
57</H3>
58
59<P>
60The <tt class="class">SocketHandler</tt> class sends logging output to a network
61socket. The base class uses a TCP socket.
62
63<P>
64<dl><dt><table cellpadding="0" cellspacing="0"><tr valign="baseline">
65 <td><nobr><b><span class="typelabel">class</span>&nbsp;<tt id='l2h-2519' xml:id='l2h-2519' class="class">SocketHandler</tt></b>(</nobr></td>
66 <td><var>host, port</var>)</td></tr></table></dt>
67<dd>
68Returns a new instance of the <tt class="class">SocketHandler</tt> class intended to
69communicate with a remote machine whose address is given by <var>host</var>
70and <var>port</var>.
71</dl>
72
73<P>
74<dl><dt><table cellpadding="0" cellspacing="0"><tr valign="baseline">
75 <td><nobr><b><tt id='l2h-2520' xml:id='l2h-2520' class="method">close</tt></b>(</nobr></td>
76 <td><var></var>)</td></tr></table></dt>
77<dd>
78Closes the socket.
79</dl>
80
81<P>
82<dl><dt><table cellpadding="0" cellspacing="0"><tr valign="baseline">
83 <td><nobr><b><tt id='l2h-2521' xml:id='l2h-2521' class="method">handleError</tt></b>(</nobr></td>
84 <td><var></var>)</td></tr></table></dt>
85<dd>
86</dl>
87
88<P>
89<dl><dt><table cellpadding="0" cellspacing="0"><tr valign="baseline">
90 <td><nobr><b><tt id='l2h-2522' xml:id='l2h-2522' class="method">emit</tt></b>(</nobr></td>
91 <td><var></var>)</td></tr></table></dt>
92<dd>
93Pickles the record's attribute dictionary and writes it to the socket in
94binary format. If there is an error with the socket, silently drops the
95packet. If the connection was previously lost, re-establishes the connection.
96To unpickle the record at the receiving end into a <tt class="class">LogRecord</tt>, use the
97<tt class="function">makeLogRecord()</tt> function.
98</dl>
99
100<P>
101<dl><dt><table cellpadding="0" cellspacing="0"><tr valign="baseline">
102 <td><nobr><b><tt id='l2h-2523' xml:id='l2h-2523' class="method">handleError</tt></b>(</nobr></td>
103 <td><var></var>)</td></tr></table></dt>
104<dd>
105Handles an error which has occurred during <tt class="method">emit()</tt>. The
106most likely cause is a lost connection. Closes the socket so that
107we can retry on the next event.
108</dl>
109
110<P>
111<dl><dt><table cellpadding="0" cellspacing="0"><tr valign="baseline">
112 <td><nobr><b><tt id='l2h-2524' xml:id='l2h-2524' class="method">makeSocket</tt></b>(</nobr></td>
113 <td><var></var>)</td></tr></table></dt>
114<dd>
115This is a factory method which allows subclasses to define the precise
116type of socket they want. The default implementation creates a TCP
117socket (<tt class="constant">socket.SOCK_STREAM</tt>).
118</dl>
119
120<P>
121<dl><dt><table cellpadding="0" cellspacing="0"><tr valign="baseline">
122 <td><nobr><b><tt id='l2h-2525' xml:id='l2h-2525' class="method">makePickle</tt></b>(</nobr></td>
123 <td><var>record</var>)</td></tr></table></dt>
124<dd>
125Pickles the record's attribute dictionary in binary format with a length
126prefix, and returns it ready for transmission across the socket.
127</dl>
128
129<P>
130<dl><dt><table cellpadding="0" cellspacing="0"><tr valign="baseline">
131 <td><nobr><b><tt id='l2h-2526' xml:id='l2h-2526' class="method">send</tt></b>(</nobr></td>
132 <td><var>packet</var>)</td></tr></table></dt>
133<dd>
134Send a pickled string <var>packet</var> to the socket. This function allows
135for partial sends which can happen when the network is busy.
136</dl>
137
138<P>
139
140<DIV CLASS="navigation">
141<div class='online-navigation'>
142<p></p><hr />
143<table align="center" width="100%" cellpadding="0" cellspacing="2">
144<tr>
145<td class='online-navigation'><a rel="prev" title="6.29.5.4 TimedRotatingFileHandler"
146 href="node349.html"><img src='../icons/previous.png'
147 border='0' height='32' alt='Previous Page' width='32' /></A></td>
148<td class='online-navigation'><a rel="parent" title="6.29.5 Handler Objects"
149 href="node345.html"><img src='../icons/up.png'
150 border='0' height='32' alt='Up One Level' width='32' /></A></td>
151<td class='online-navigation'><a rel="next" title="6.29.5.6 DatagramHandler"
152 href="node351.html"><img src='../icons/next.png'
153 border='0' height='32' alt='Next Page' width='32' /></A></td>
154<td align="center" width="100%">Python Library Reference</td>
155<td class='online-navigation'><a rel="contents" title="Table of Contents"
156 href="contents.html"><img src='../icons/contents.png'
157 border='0' height='32' alt='Contents' width='32' /></A></td>
158<td class='online-navigation'><a href="modindex.html" title="Module Index"><img src='../icons/modules.png'
159 border='0' height='32' alt='Module Index' width='32' /></a></td>
160<td class='online-navigation'><a rel="index" title="Index"
161 href="genindex.html"><img src='../icons/index.png'
162 border='0' height='32' alt='Index' width='32' /></A></td>
163</tr></table>
164<div class='online-navigation'>
165<b class="navlabel">Previous:</b>
166<a class="sectref" rel="prev" href="node349.html">6.29.5.4 TimedRotatingFileHandler</A>
167<b class="navlabel">Up:</b>
168<a class="sectref" rel="parent" href="node345.html">6.29.5 Handler Objects</A>
169<b class="navlabel">Next:</b>
170<a class="sectref" rel="next" href="node351.html">6.29.5.6 DatagramHandler</A>
171</div>
172</div>
173<hr />
174<span class="release-info">Release 2.4.2, documentation updated on 28 September 2005.</span>
175</DIV>
176<!--End of Navigation Panel-->
177<ADDRESS>
178See <i><a href="about.html">About this document...</a></i> for information on suggesting changes.
179</ADDRESS>
180</BODY>
181</HTML>