Samples

PIKT is a cross-categorical, multi-purpose toolkit for Unix/Linux systems and network administration.

Although intended primarily for system monitoring, and secondarily for configuration management, PIKT's versatility and extensibility inspire many other interesting and wide-ranging uses.

Suggested uses include:  system and network monitor, configuration manager, change auditor, log file analyzer, host-based intrusion detection system (HIDS), process scheduler, macro preprocessor, customizing file installer, document formatter, website content management system, software tester, command-line assistant, etc.

PIKT does none of these things right "out of the box."  To get PIKT to do anything, you first have to configure it.  PIKT has as many as eight standard config files, although you may deploy fewer than those eight if you wish.

Open Hand Before starting your configuration (and after working through the PIKT Tutorial), be sure to read Where Do You Go from Here, also Script Development and Testing.

Following are some example configurations:

  • systems.cfg is where you specify host systems, aliases, and groups.  The top-level systems.cfg file might reference smaller #include files, some of them perhaps auto-generated (examples not shown).

  • defines.cfg specifies a set of "defines"--preprocessor logical switches for including or excluding sections of the configuration files.  The top-level defines.cfg might reference #include files, for example:
    • security_defines.cfg (security levels)
    • and so on for other define #include files...

  • macros.cfg specifies a collection of macros, or preprocessor text substitutions.  The top-level macros.cfg might reference #include files.

  • alerts.cfg groups together Pikt and other program scripts and schedules them for execution.  The top-level alerts.cfg might, but typically does not, reference #include files (examples not shown).

  • alarms.cfg is a series of one or more Pikt scripts.  The top-level alarms.cfg might reference #include files.
  • objects.cfg specifies system objects for monitoring, often with associated data.  The top-level objects.cfg typically references #include files.

  • programs.cfg contains support scripts written in other script languages (other than the Pikt language).  The top-level programs.cfg typically references #include files. each with a single program script.

  • files.cfg specifies system configuration files, and indeed any text file.  The top-level files.cfg typically references #include files, each with a single configuration file.

  • PIKT.conf is the PIKT master configuration file.
    piktd.conf shows some typical monitoring script schedules.
    keys.conf is the encryption keys file.

  • pikt is a suggested PIKT startup script.

  • piktc commands shows some typical operations of the PIKT preprocessor.

  • A few sample problem reports.

(A note about page layout:  In the interest of readability, we have added artificial line wraps in many examples.  Even though displayed here broken up across several screen lines, in general quoted strings, preprocessor directives, macro definitions, .log & .conf entries, and so on should all be unbroken on a single line.)

These samples do not constitute a complete, coherent PIKT configuration, nor are they necessarily current.  Much has been left out.  The provided examples are suggestive only.  Use them as inspiration for designing and writing your own configuration.

It should be emphasized that the examples shown here are not an intrinsic part of PIKT.  You may adopt the suggested formats, layouts, #include files, macros, timings, scripts, object sets, etc., or you may devise a completely different setup.  You may use the Pikt script language, or employ the one you favor (such as Perl, Python, or whatever).  You may utilize PIKT for every purpose, or just pick and choose among its many functionalities.  Be as complicated as you like, or keep things simple.  You have the utmost flexibility.  The choices are entirely yours.

Open Hand See also the Introduction and Developer's Notes pages for additional samples (with commentary).

 
Home | FAQ | News | Intro | Samples | Tutorial | Reference | Software
Developer's Notes | Licensing | Authors | Pikt-Users | Pikt-Workers | Related Projects | Site Index | Privacy Policy | Contact Us
Page best viewed at 1024x768 or greater.   Page last updated 2008-03-27.   This site is PIKT® powered.
PIKT® is a registered trademark of the University of Chicago.   Copyright © 1998-2008 Robert Osterlund. All rights reserved.
Home FAQ News Intro Samples Tutorial Reference Software
PIKT Logo
PIKT Page Title
Learn how to
develop a PIKT
configuration
, also
develop & test
Pikt scripts