Edwin A. Suominen
Books
Blog
Photography
Software
logalyzer API Documentation

Class Hierarchy

  • asynqueue.iteration.ListConsumer
    • logalyzer.database.RecordConsumer - I consume rows and make them into records.
  • Exception
    • logalyzer.util.DatabaseError - Incompatible database.
  • logalyzer.logread.KWParse - Subclass me, define a list of name-default keyword options via the 'keyWords' class attribute, and call this method in your constructor.
    • logalyzer.logread.ProcessReader - Subordinate Python processes use their own instances of me to read logfiles.
    • logalyzer.logread.Reader - I read and parse web server log files
  • logalyzer.test.test_sift.ReMatcherTestMixin - Undocumented
    • logalyzer.test.test_sift.TestBotMatcher - Undocumented
    • logalyzer.test.test_sift.TestUAMatcher - Undocumented
  • logalyzer.test.testbase.Bogus - Undocumented
  • logging.StreamHandler
    • logalyzer.test.testbase.TestHandler - Undocumented
  • object
    • logalyzer.database.DTK - I maintain a CPU-efficient but somewhat memory expensive lookup tree for datetime objects.
    • logalyzer.database.PreloadConsumer - I consume single-item query results, doing the specified f-args-kw for each.
    • logalyzer.gui.GUI - I am the main curses interface.
    • logalyzer.gui.StdSubstitute - Substitute sink for stdout and stderr when the GUI is used, to avoid garbage characters messing up the terminal. Also acts as a Twisted log observer.
    • logalyzer.parse.LineParser - I parse logfile lines to generate timestamp-keyed records. Send an instance of me to your processes.
    • logalyzer.parse.MatcherManager - I manage a menagerie of matchers, making their magic available via methods.
    • logalyzer.parse.RedirectChecker - I check for requests that follow a redirect. Call me with the IP address and HTTP code of each request in order.
    • logalyzer.sift.IPMatcher - I efficiently match IP addresses. Simple and fast.
    • logalyzer.sift.MatcherBase - Build your matcher on me
      • logalyzer.sift.NetMatcher - I efficiently match IP addresses to IP networks with rules
      • logalyzer.sift.ReMatcherBase - I efficiently match strings with regular expressions
        • logalyzer.sift.BotMatcher - I use parsed .url rules to efficiently check for bots that are seen in logs doing hacker-type things, and should get blocked.
        • logalyzer.sift.RefMatcher - I use parsed .ref rules to efficiently check for referrers that are clearly logspammers, and should get blocked.
        • logalyzer.sift.UAMatcher - I use parsed .ua rules to efficiently check for user-agents that are undesirable in logs, though they shouldn't be blocked.
        • logalyzer.sift.VhostMatcher - I use parsed .vhost rules to efficiently check for referrers that are requesting clearly inappropriate vhosts , and should get blocked.
    • logalyzer.test.test_gui.Display - Undocumented
    • logalyzer.test.testbase.MsgBase - A mixin for providing a convenient message method.
      • logalyzer.test.testbase.IterationConsumer - Undocumented
      • logalyzer.test.testbase.MockDTK - Undocumented
      • logalyzer.test.testbase.MockWorker - Undocumented
      • logalyzer.test.testbase.TestCase - Slightly improved TestCase
        • logalyzer.test.test_database.TestDTK - Undocumented
        • logalyzer.test.test_database.TestTransactor - Undocumented
        • logalyzer.test.test_gui.TestCase - Undocumented
          • logalyzer.test.test_gui.TestFileRow - Undocumented
          • logalyzer.test.test_gui.TestFiles - Undocumented
          • logalyzer.test.test_gui.TestGUI - Undocumented
          • logalyzer.test.test_gui.TestMessageBox - Undocumented
          • logalyzer.test.test_gui.TestMessages - Undocumented
          • logalyzer.test.test_gui.TestMessagesWithFiller - Undocumented
          • logalyzer.test.test_gui.TestPalette - Undocumented
        • logalyzer.test.test_gui.TestFilesAPI - Undocumented
        • logalyzer.test.test_logread.TestProcessReader - Undocumented
        • logalyzer.test.test_logread.TestReader - Undocumented
        • logalyzer.test.test_parse.TestParser - Undocumented
        • logalyzer.test.test_parse.TestRedirectChecker - Undocumented
        • logalyzer.test.test_records.TestRecordKeeper - Undocumented
        • logalyzer.test.test_sift.TestBotMatcher - Undocumented
        • logalyzer.test.test_sift.TestIPMatcher - Undocumented
        • logalyzer.test.test_sift.TestNetMatcher - Undocumented
        • logalyzer.test.test_sift.TestUAMatcher - Undocumented
      • logalyzer.test.testbase.TestHandler - Undocumented
    • logalyzer.test.testbase.Runerator - Iterates over an executable object to see if it worked and do something if it did before its output is cleaned up.
    • logalyzer.util.Args - No summary
    • logalyzer.util.Base - Subclass me to have a few convenient methods and easily work with a directory. The default directory is the current one, set another with the 'myDir' attribute.
      • logalyzer.database.Transactor - I handle transactions for an efficient database of logfile entries.
      • logalyzer.logread.Reader - I read and parse web server log files
      • logalyzer.main.Recorder - I load records from a Reader and update a database with them.
      • logalyzer.main.RuleReader - I read rule files
      • logalyzer.records.ProcessConsumer - I consume bad IP addresses and good records from a logfile parsing process.
      • logalyzer.records.RecordKeeper - No summary
      • logalyzer.writer.IPWriter - I write IP addresses to files.
    • logalyzer.util.BogusQueue - No class docstring; 1/3 methods documented
    • logalyzer.util.CacheManager - Let me manage a cache or two for you.
  • sasync.database.AccessBroker
    • logalyzer.database.Transactor - I handle transactions for an efficient database of logfile entries.
  • twisted.trial.unittest.TestCase
    • logalyzer.test.testbase.TestCase - Slightly improved TestCase
      • logalyzer.test.test_database.TestDTK - Undocumented
      • logalyzer.test.test_database.TestTransactor - Undocumented
      • logalyzer.test.test_gui.TestCase - Undocumented
        • logalyzer.test.test_gui.TestFileRow - Undocumented
        • logalyzer.test.test_gui.TestFiles - Undocumented
        • logalyzer.test.test_gui.TestGUI - Undocumented
        • logalyzer.test.test_gui.TestMessageBox - Undocumented
        • logalyzer.test.test_gui.TestMessages - Undocumented
        • logalyzer.test.test_gui.TestMessagesWithFiller - Undocumented
        • logalyzer.test.test_gui.TestPalette - Undocumented
      • logalyzer.test.test_gui.TestFilesAPI - Undocumented
      • logalyzer.test.test_logread.TestProcessReader - Undocumented
      • logalyzer.test.test_logread.TestReader - Undocumented
      • logalyzer.test.test_parse.TestParser - Undocumented
      • logalyzer.test.test_parse.TestRedirectChecker - Undocumented
      • logalyzer.test.test_records.TestRecordKeeper - Undocumented
      • logalyzer.test.test_sift.TestBotMatcher - Undocumented
      • logalyzer.test.test_sift.TestIPMatcher - Undocumented
      • logalyzer.test.test_sift.TestNetMatcher - Undocumented
      • logalyzer.test.test_sift.TestUAMatcher - Undocumented
  • urwid.GridFlow
    • logalyzer.gui.Files - I occupy most of the screen with a list of access log files being processed.
  • urwid.ListBox
    • logalyzer.gui.FileRow - I am one row of your status-updatable file list.
    • logalyzer.gui.MessageBox - I am a message box consisting of a heading and an expandable space for lines you can add under the heading.
    • logalyzer.gui.Messages - I provide a place for status messages to be displayed below headings.
  • urwid.Text
    • logalyzer.gui.ProgressText - Call my step method to show progress with a spinning indicator, and done to blank out the indicator.

Copyright © 2015-2018 Edwin A. Suominen.

Privacy policy: I don’t sniff out, track, or share anything identifying individual visitors to this site. There are no cookies or anything in place to let me see where you go on the Internet–that’s creepy. All I get (like anyone else with a web server), is plain vanilla server logs with “referral” info about which web page sent you to this one.