java/HrisniciSpameri/src/java/cz/frantovo/hrisniciSpameri/dao/GeneratorSouhrnuDAO.sql.xml
author František Kučera <franta-hg@frantovo.cz>
Sun, 15 Feb 2009 00:32:53 +0100
changeset 28 dbb434bd4b99
parent 23 b22c06c8a55c
child 32 3bc16e43872b
permissions -rw-r--r--
Generátor vytváří souhrny pro období od-do (včetně)
Funguje, ale kvůli překladům IP adres to trvá příliš dlouho.
Bude potřeba nejdříve vytvořit souhrn bez překladů (bude tam null)
a v dalším kole provést překlad IP adres → tím zkrátíme první databázovou transakci
a ušetříme přibližně třetinu času na překlady (pokud každá IP útočila třikrát)
nebo i více, pokud máme více cílů (je dost možné, že IP adresy útočníků budou stejné a nebudeme je muset překládat několikrát)
franta-hg@22
     1
<?xml version="1.0" encoding="UTF-8"?>
franta-hg@22
     2
<!DOCTYPE properties SYSTEM "http://java.sun.com/dtd/properties.dtd">
franta-hg@22
     3
<properties>
franta-hg@22
     4
    <entry key="VLOZ_SOUHRN">
franta-hg@22
     5
        <![CDATA[
franta-hg@22
     6
        INSERT INTO souhrn
franta-hg@22
     7
        (den, ip, domena, pocet, cil)
franta-hg@22
     8
        VALUES (?,?,?,?,?)
franta-hg@22
     9
        ]]>
franta-hg@22
    10
    </entry>
franta-hg@23
    11
    <entry key="SMAZ_SOUHRNY">
franta-hg@23
    12
        <![CDATA[
franta-hg@23
    13
        DELETE FROM souhrn
franta-hg@23
    14
        WHERE   cil = ?
franta-hg@28
    15
                AND den >= ?
franta-hg@28
    16
                AND den <= ?
franta-hg@23
    17
        ]]>
franta-hg@23
    18
    </entry>
franta-hg@23
    19
    <entry key="UKAZKA_SELEKTU">
franta-hg@23
    20
        <!--
franta-hg@23
    21
            Takhle může vypadat selekt pro získání údajů z Drupalu (MySQL).
franta-hg@23
    22
            Selekt nepíšeme sem, ale do databáze do definici cíle.
franta-hg@23
    23
        -->
franta-hg@23
    24
        <![CDATA[
franta-hg@23
    25
        SELECT  hostname AS ip,
franta-hg@28
    26
                count(*) AS pocet,
franta-hg@28
    27
                date(from_unixtime(timestamp)) AS den
franta-hg@23
    28
        FROM    drupal5_watchdog
franta-hg@23
    29
        WHERE   type = 'captcha'
franta-hg@28
    30
                AND date(from_unixtime(timestamp)) >= date(?)
franta-hg@28
    31
                AND date(from_unixtime(timestamp)) <= date(?)
franta-hg@28
    32
        GROUP BY hostname, date(from_unixtime(timestamp))
franta-hg@23
    33
        ]]>
franta-hg@23
    34
    </entry>
franta-hg@22
    35
</properties>