<?xml version="1.0"?>
<!DOCTYPE modulesynopsis SYSTEM "../style/modulesynopsis.dtd">
<?xml-stylesheet type="text/xsl" href="../style/manual.tr.xsl"?>
<!-- English Revision: 1588345:1684312 (outdated) -->
<!-- =====================================================
 Translated by: Nilgün Belma Bugüner <nilgun belgeler.gen.tr>
   Reviewed by: Orhan Berent <berent belgeler.gen.tr>
========================================================== -->

<!--
 Licensed to the Apache Software Foundation (ASF) under one or more
 contributor license agreements.  See the NOTICE file distributed with
 this work for additional information regarding copyright ownership.
 The ASF licenses this file to You under the Apache License, Version 2.0
 (the "License"); you may not use this file except in compliance with
 the License.  You may obtain a copy of the License at

     http://www.apache.org/licenses/LICENSE-2.0

 Unless required by applicable law or agreed to in writing, software
 distributed under the License is distributed on an "AS IS" BASIS,
 WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 See the License for the specific language governing permissions and
 limitations under the License.
-->

<modulesynopsis metafile="mod_logio.xml.meta">

<name>mod_logio</name>
<description>Her isteğin girdi ve çıktı uzunluklarının günlüklenmesi.
</description>
<status>Extension</status>
<sourcefile>mod_logio.c</sourcefile>
<identifier>logio_module</identifier>

<summary>

    <p>Bu modül her istekte alınan ve gönderilen bayt sayısının günlüklenmesini
      sağlar. Sayılar, istekte ve yanıtta yer alan başlıklar ve gövdeleri
      hesaba dahil ederek ağ üzerinde gerçekte gidip gelen bayt sayısını
      gösterir. Bayt sayımı, girdide SSL/TLS öncesinde ve çıktıda SSL/TLS
      sonrasında yapılır, böylece sayıların, şifrelemeyle herhangi bir
      değişikliği doğru olarak yansıtması sağlanmış olur.</p>

    <p>Bu modül <module>mod_log_config</module> modülünü gerektirir.</p>

    <note>SSL ile <code>KeepAlive</code> bağlantılar kullanıldığında, SSL
      uzlaşımının ek yükü, bağlantı üzerinden yapılan ilk isteğin bayt sayısını
      yansıtır. Her dizin için yeniden uzlaşım gerektiği takdirde bayt sayısı
      yeniden uzlaşımı tetikleyen istekle ilişkilendirilir.</note>

</summary>

<seealso><module>mod_log_config</module></seealso>
<seealso><a href="../logs.html">Apache Günlük Dosyaları</a></seealso>

<section id="formats">
<title>Özel Günlük Biçemleri</title>

    <p>İsteğin belirgin özellikleri için, biçem dizgesinde yer alan % imli
      biçem belirteçlerinin yerine günlük dosyasında değerleri yazılır. Bu
      modül üç yeni biçem belirteci ekler:</p>

    <table border="1" style="zebra">
    <tr><th>Biçem&nbsp;Belirteci</th>
        <th>Açıklama</th></tr>

    <tr><td><code>%I</code></td>
        <td>İstek gövdesi ve başlıklar dahil alınan bayt sayısı; sıfır
          olamaz.</td></tr>

    <tr><td><code>%O</code></td>
        <td>Başlıklar dahil gönderilen bayt sayısı; sıfır olamaz.</td></tr>

    <tr><td><code>%S</code></td>
        <td>Aktarılan bayt sayısı (alınan ve gönderilen), istekler ve başlıklar
          dahil; sıfır olamaz. %I ve %O'nun birleşimidir.<br />
          Apache 2.4.7 ve sonrasında kullanılabilmektedir.</td></tr>
    </table>

    <p>Genel olarak, işlevsellik şöyle kullanılır:</p>

    <dl>
      <dt>Birleşik G/Ç günlükleme biçemi:</dt>
      <dd><code>"%h %l %u %t \"%r\" %&gt;s %b \"%{Referer}i\"
      \"%{User-agent}i\" %I %O"</code></dd>
    </dl>
</section>

</modulesynopsis>
