<?php
include_once $_SERVER['DOCUMENT_ROOT'] . '/include/shared-manual.inc';
$TOC = array();
$TOC_DEPRECATED = array();
$PARENTS = array();
include_once dirname(__FILE__) ."/toc/ref.network.inc";
$setup = array (
  'home' => 
  array (
    0 => 'index.php',
    1 => 'PHP Manual',
  ),
  'head' => 
  array (
    0 => 'UTF-8',
    1 => 'it',
  ),
  'this' => 
  array (
    0 => 'function.syslog.php',
    1 => 'syslog',
    2 => 'Genera un messaggio del system log',
  ),
  'up' => 
  array (
    0 => 'ref.network.php',
    1 => 'Network Funzioni',
  ),
  'prev' => 
  array (
    0 => 'function.socket-set-timeout.php',
    1 => 'socket_set_timeout',
  ),
  'next' => 
  array (
    0 => 'book.rrd.php',
    1 => 'RRD',
  ),
  'alternatives' => 
  array (
  ),
  'source' => 
  array (
    'lang' => 'it',
    'path' => 'reference/network/functions/syslog.xml',
  ),
  'history' => 
  array (
  ),
);
$setup["toc"] = $TOC;
$setup["toc_deprecated"] = $TOC_DEPRECATED;
$setup["parents"] = $PARENTS;
manual_setup($setup);

contributors($setup);

?>
<div id="function.syslog" class="refentry">
   <div class="refnamediv">
    <h1 class="refname">syslog</h1>
    <p class="verinfo">(PHP 4, PHP 5, PHP 7, PHP 8)</p><p class="refpurpose"><span class="refname">syslog</span> &mdash; <span class="dc-title">Genera un messaggio del system log</span></p>
 
   </div>
   <div class="refsect1 unknown-1114" id="refsect1-function.syslog-unknown-1114">
    <h3 class="title">Descrizione</h3>
     <div class="methodsynopsis dc-description">
      <span class="methodname"><strong>syslog</strong></span>(<span class="methodparam"><span class="type"><a href="language.types.integer.php" class="type int">int</a></span> <code class="parameter">$priorità</code></span>, <span class="methodparam"><span class="type"><a href="language.types.string.php" class="type string">string</a></span> <code class="parameter">$messaggio</code></span>): <span class="type"><a href="language.types.integer.php" class="type int">int</a></span></div>

    <p class="para rdfs-comment">
     <span class="function"><strong>syslog()</strong></span> genera un messaggio di log che viene distribuito dal
     logger di sistema.
     <code class="parameter">priorità</code> è la combinazione della facility
     e del livello, valori utilizzabili sono riportati nella prossima sezione.
     L&#039;argomento rimanente è il messaggio da inviare, eccetto i 
     due caratteri <code class="literal">%m</code> che vengono sostituiti dalla
     stringa del messaggio di errore (strerror) corrispondente all&#039;attuale 
     valore di <span class="errortype">errno</span>.
    </p>
    <p class="para">
     <table class="doctable table">
      <caption><strong>Priorità <span class="function"><strong>syslog()</strong></span> (in ordine discendente)</strong></caption>
      
       <thead>
        <tr>
         <th>Costante</th>
         <th>Descrizione</th>
        </tr>

       </thead>

       <tbody class="tbody">
        <tr>
         <td>LOG_EMERG</td>
         <td>sistema non utilizzabile</td>
        </tr>

        <tr>
         <td>LOG_ALERT</td>
         <td>azione da intraprendere immediatamente</td>
        </tr>

        <tr>
         <td>LOG_CRIT</td>
         <td>condizioni critiche</td>
        </tr>

        <tr>
         <td>LOG_ERR</td>
         <td>condizioni di errore</td>
        </tr>

        <tr>
         <td>LOG_WARNING</td>
         <td>condizioni di attenzione</td>
        </tr>

        <tr>
         <td>LOG_NOTICE</td>
         <td>condizione normale, ma significativa</td>
        </tr>

        <tr>
         <td>LOG_INFO</td>
         <td>messaggio di informazione</td>
        </tr>

        <tr>
         <td>LOG_DEBUG</td>
         <td>messaggio a livello di debug</td>
        </tr>

       </tbody>
      
     </table>

    </p>
    <p class="para">
     <div class="example" id="example-1">
      <p><strong>Example #1 Uso di <span class="function"><strong>syslog()</strong></span></strong></p>
      <div class="example-contents">
<div class="phpcode"><code><span style="color: #000000"><span style="color: #0000BB">&lt;?php<br />define_syslog_variables</span><span style="color: #007700">();<br /></span><span style="color: #FF8000">// apre il syslog, include l'ID del processo, invia il<br />// log anche su standard error e fa uso di un meccanismo<br />// di logging defiito dall'utente<br /></span><span style="color: #0000BB">openlog</span><span style="color: #007700">(</span><span style="color: #DD0000">"IlMioLog"</span><span style="color: #007700">, </span><span style="color: #0000BB">LOG_PID </span><span style="color: #007700">| </span><span style="color: #0000BB">LOG_PERROR</span><span style="color: #007700">, </span><span style="color: #0000BB">LOG_LOCAL0</span><span style="color: #007700">);<br /><br /></span><span style="color: #FF8000">// un po' di codice<br /><br /></span><span style="color: #007700">if (</span><span style="color: #0000BB">client_autorizzato</span><span style="color: #007700">()) {<br />    </span><span style="color: #FF8000">// fa qualcosa<br /></span><span style="color: #007700">} else {<br />    </span><span style="color: #FF8000">// client non autorizzato!<br />    // logga il tentativo<br />    </span><span style="color: #0000BB">$accesso </span><span style="color: #007700">= </span><span style="color: #0000BB">date</span><span style="color: #007700">(</span><span style="color: #DD0000">"Y/m/d H:i:s"</span><span style="color: #007700">);<br />    </span><span style="color: #0000BB">syslog</span><span style="color: #007700">(</span><span style="color: #0000BB">LOG_WARNING</span><span style="color: #007700">,</span><span style="color: #DD0000">"Client non autorizzato: </span><span style="color: #0000BB">$accesso</span><span style="color: #DD0000"> </span><span style="color: #0000BB">$REMOTE_ADDR</span><span style="color: #DD0000"> (</span><span style="color: #0000BB">$HTTP_USER_AGENT</span><span style="color: #DD0000">)"</span><span style="color: #007700">);<br />}<br /><br /></span><span style="color: #0000BB">closelog</span><span style="color: #007700">();<br /></span><span style="color: #0000BB">?&gt;</span></span></code></div>
      </div>

     </div>
     Per informazioni su come creare un gestore di log definito dall&#039;utente, fare riferimento alla man page
     <span class="citerefentry"><span class="refentrytitle">syslog.conf</span>
     <span class="manvolnum">(5)</span></span> di Unix. Ulteriori
     informazioni sulle facility di syslog e sulle sue opzioni possono essere trovate sulle macchine Unix nelle man page
     di <span class="citerefentry"><span class="refentrytitle">syslog</span>
     <span class="manvolnum">(3)</span></span>.
    </p>
    <p class="para">
     Su Windows NT, il servizio syslog è emulato usando Event
     Log.
    </p>
    <p class="para">
     Vedere anche <span class="function"><strong>define_syslog_variables()</strong></span>,
     <span class="function"><a href="function.openlog.php" class="function">openlog()</a></span> e
     <span class="function"><a href="function.closelog.php" class="function">closelog()</a></span>.
    </p>
   </div>

  </div><?php manual_footer($setup); ?>