__ __ __ __ _____ _ _ _____ _ _ _ | \/ | \ \ / / | __ \ (_) | | / ____| | | | | | \ / |_ __\ V / | |__) | __ ___ ____ _| |_ ___ | (___ | |__ ___| | | | |\/| | '__|> < | ___/ '__| \ \ / / _` | __/ _ \ \___ \| '_ \ / _ \ | | | | | | |_ / . \ | | | | | |\ V / (_| | || __/ ____) | | | | __/ | | |_| |_|_(_)_/ \_\ |_| |_| |_| \_/ \__,_|\__\___| |_____/|_| |_|\___V 2.1 if you need WebShell for Seo everyday contact me on Telegram Telegram Address : @jackleetFor_More_Tools:
(*
Module: Syslog
parses /etc/syslog.conf
Author: Mathieu Arnold <mat@FreeBSD.org>
About: Reference
This lens tries to keep as close as possible to `man 5 resolv.conf` where possible.
An online source being :
http://www.freebsd.org/cgi/man.cgi?query=syslog.conf&sektion=5
About: Licence
This file is licensed under the BSD License.
About: Lens Usage
To be documented
About: Configuration files
This lens applies to /etc/syslog.conf. See <filter>.
*)
module Syslog =
autoload xfm
(************************************************************************
* Group: USEFUL PRIMITIVES
*************************************************************************)
(* Group: Comments and empty lines *)
(* Variable: empty *)
let empty = Util.empty
(* Variable: eol *)
let eol = Util.eol
(* Variable: sep_tab *)
let sep_tab = del /([ \t]+|[ \t]*\\\\\n[ \t]*)/ "\t"
(* Variable: sep_tab_opt *)
let sep_tab_opt = del /([ \t]*|[ \t]*\\\\\n[ \t]*)/ ""
(* View: comment
Map comments into "#comment" nodes
Can't use Util.comment as #+ and #! have a special meaning.
However, '# !' and '# +' have no special meaning so they should be allowed.
*)
let comment_gen (space:regexp) (sto:regexp) =
[ label "#comment" . del (Rx.opt_space . "#" . space) "# "
. store sto . eol ]
let comment =
let comment_withsign = comment_gen Rx.space /([!+-].*[^ \t\n]|[!+-])/
in let comment_nosign = comment_gen Rx.opt_space /([^ \t\n+!-].*[^ \t\n]|[^ \t\n+!-])/
in comment_withsign | comment_nosign
(* Group: single characters macro *)
(* Variable: comma
Deletes a comma and default to it
*)
let comma = sep_tab_opt . Util.del_str "," . sep_tab_opt
(* Variable: colon
Deletes a colon and default to it
*)
let colon = sep_tab_opt . Util.del_str ":" . sep_tab_opt
(* Variable: semicolon
Deletes a semicolon and default to it
*)
let semicolon = sep_tab_opt . Util.del_str ";" . sep_tab_opt
(* Variable: dot
Deletes a dot and default to it
*)
let dot = Util.del_str "."
(* Variable: pipe
Deletes a pipe and default to it
*)
let pipe = Util.del_str "|"
(* Variable: plus
Deletes a plus and default to it
*)
let plus = Util.del_str "+"
(* Variable: bang
Deletes a bang and default to it
*)
let bang = Util.del_str "!"
(* Variable: opt_hash
deletes an optional # sign
*)
let opt_hash = del /#?/ ""
(* Variable: opt_plus
deletes an optional + sign
*)
let opt_plus = del /\+?/ ""
(* Group: various macros *)
(* Variable: word
our version can't start with [_.-] because it would mess up the grammar
*)
let word = /[A-Za-z0-9][A-Za-z0-9_.-]*/
(* Variable: comparison
a comparison is an optional ! with optionally some of [<=>]
*)
let comparison = /(!|[<=>]+|![<=>]+)/
(* Variable: protocol
@ means UDP
@@ means TCP
*)
let protocol = /@{1,2}/
(* Variable: token
alphanum or "*"
*)
let token = /([A-Za-z0-9]+|\*)/
(* Variable: file_r
a file begins with a / and get almost anything else after
*)
let file_r = /\/[^ \t\n;]+/
(* Variable: loghost_r
Matches a hostname, that is labels speparated by dots, labels can't
start or end with a "-". maybe a bit too complicated for what it's worth *)
let loghost_r = /[a-zA-Z0-9]([a-zA-Z0-9-]*[a-zA-Z0-9])?(\.[a-zA-Z0-9]([a-zA-Z0-9-]*[a-zA-Z0-9])?)*/ |
"[" . Rx.ipv6 . "]"
(* Group: Function *)
(* View: label_opt_list
Uses Build.opt_list to generate a list of labels
Parameters:
l:string - the label name
r:lens - the lens going after the label
s:lens - the separator lens passed to Build.opt_list
*)
let label_opt_list (l:string) (r:lens) (s:lens) = Build.opt_list [ label l . r ] s
(* View: label_opt_list_or
Either label_opt_list matches something or it emits a single label
with the "or" string.
Parameters:
l:string - the label name
r:lens - the lens going after the label
s:lens - the separator lens passed to Build.opt_list
or:string - the string used if the label_opt_list does not match anything
*)
let label_opt_list_or (l:string) (r:lens) (s:lens) (or:string) =
( label_opt_list l r s | [ label l . store or ] )
(************************************************************************
* Group: LENSE DEFINITION
*************************************************************************)
(* Group: selector *)
(* View: facilities
a list of facilities, separated by commas
*)
let facilities = label_opt_list "facility" (store token) comma
(* View: selector
a selector is a list of facilities, an optional comparison and a level
*)
let selector = facilities . dot .
[ label "comparison" . store comparison]? .
[ label "level" . store token ]
(* View: selectors
a list of selectors, separated by semicolons
*)
let selectors = label_opt_list "selector" selector semicolon
(* Group: action *)
(* View: file
a file may start with a "-" meaning it does not gets sync'ed everytime
*)
let file = [ Build.xchgs "-" "no_sync" ]? . [ label "file" . store file_r ]
(* View: loghost
a loghost is an @ sign followed by the hostname and a possible port
*)
let loghost = [label "protocol" . store protocol] . [ label "hostname" . store loghost_r ] .
(colon . [ label "port" . store /[0-9]+/ ] )?
(* View: users
a list of users or a "*"
*)
let users = label_opt_list_or "user" (store word) comma "*"
(* View: logprogram
a log program begins with a pipe
*)
let logprogram = pipe . [ label "program" . store /[^ \t\n][^\n]+[^ \t\n]/ ]
(* View: discard
discards matching messages
*)
let discard = [ label "discard" . Util.del_str "~" ]
(* View: action
an action is either a file, a host, users, a program, or discard
*)
let action = (file | loghost | users | logprogram | discard)
(* Group: Entry *)
(* View: entry
an entry contains selectors and an action
*)
let entry = [ label "entry" .
selectors . sep_tab .
[ label "action" . action ] . eol ]
(* View: entries
entries are either comments/empty lines or entries
*)
let entries = (empty | comment | entry )*
(* Group: Program matching *)
(* View: programs
a list of programs
*)
let programs = label_opt_list_or "program" (store word) comma "*"
(* View: program
a program begins with an optional hash, a bang, and an optional + or -
*)
let program = [ label "program" . opt_hash . bang .
( opt_plus | [ Build.xchgs "-" "reverse" ] ) .
programs . eol . entries ]
(* Group: Hostname maching *)
(* View: hostnames
a list of hostnames
*)
let hostnames = label_opt_list_or "hostname" (store Rx.word) comma "*"
(* View: hostname
a program begins with an optional hash, and a + or -
*)
let hostname = [ label "hostname" . opt_hash .
( plus | [ Build.xchgs "-" "reverse" ] ) .
hostnames . eol . entries ]
(* Group: Top of the tree *)
let include =
[ key "include" . sep_tab . store file_r . eol ]
(* View: lns
generic entries then programs or hostnames matching blocs
*)
let lns = entries . ( program | hostname | include )*
(* Variable: filter
all you need is /etc/syslog.conf
*)
let filter = incl "/etc/syslog.conf"
let xfm = transform lns filter
| Name | Type | Size | Permission | Actions |
|---|---|---|---|---|
| tests | Folder | 0755 |
|
|
| access.aug | File | 3.58 KB | 0644 |
|
| activemq_conf.aug | File | 1.47 KB | 0644 |
|
| activemq_xml.aug | File | 864 B | 0644 |
|
| afs_cellalias.aug | File | 1.56 KB | 0644 |
|
| aliases.aug | File | 2.18 KB | 0644 |
|
| anaconda.aug | File | 775 B | 0644 |
|
| anacron.aug | File | 2.49 KB | 0644 |
|
| approx.aug | File | 1.26 KB | 0644 |
|
| apt_update_manager.aug | File | 1.11 KB | 0644 |
|
| aptcacherngsecurity.aug | File | 726 B | 0644 |
|
| aptconf.aug | File | 3.9 KB | 0644 |
|
| aptpreferences.aug | File | 1.79 KB | 0644 |
|
| aptsources.aug | File | 1.98 KB | 0644 |
|
| authinfo2.aug | File | 1.44 KB | 0644 |
|
| authorized_keys.aug | File | 1.84 KB | 0644 |
|
| authselectpam.aug | File | 3.7 KB | 0644 |
|
| automaster.aug | File | 3.31 KB | 0644 |
|
| automounter.aug | File | 4.05 KB | 0644 |
|
| avahi.aug | File | 1.38 KB | 0644 |
|
| backuppchosts.aug | File | 1014 B | 0644 |
|
| bbhosts.aug | File | 4.24 KB | 0644 |
|
| bootconf.aug | File | 3.65 KB | 0644 |
|
| build.aug | File | 16.65 KB | 0644 |
|
| cachefilesd.aug | File | 2 KB | 0644 |
|
| carbon.aug | File | 1.54 KB | 0644 |
|
| ceph.aug | File | 719 B | 0644 |
|
| cgconfig.aug | File | 3.37 KB | 0644 |
|
| cgrules.aug | File | 2.38 KB | 0644 |
|
| channels.aug | File | 3.84 KB | 0644 |
|
| chrony.aug | File | 13.79 KB | 0644 |
|
| clamav.aug | File | 1.72 KB | 0644 |
|
| cmdline.aug | File | 506 B | 0644 |
|
| cobblermodules.aug | File | 398 B | 0644 |
|
| cobblersettings.aug | File | 2.24 KB | 0644 |
|
| cockpit.aug | File | 1.96 KB | 0644 |
|
| collectd.aug | File | 869 B | 0644 |
|
| cpanel.aug | File | 824 B | 0644 |
|
| cron.aug | File | 4.05 KB | 0644 |
|
| cron_user.aug | File | 1.26 KB | 0644 |
|
| crypttab.aug | File | 3.08 KB | 0644 |
|
| csv.aug | File | 1.18 KB | 0644 |
|
| cups.aug | File | 459 B | 0644 |
|
| cyrus_imapd.aug | File | 1.51 KB | 0644 |
|
| darkice.aug | File | 773 B | 0644 |
|
| debctrl.aug | File | 3.61 KB | 0644 |
|
| desktop.aug | File | 1.39 KB | 0644 |
|
| devfsrules.aug | File | 619 B | 0644 |
|
| device_map.aug | File | 620 B | 0644 |
|
| dhclient.aug | File | 6.69 KB | 0644 |
|
| dhcpd.aug | File | 20.88 KB | 0644 |
|
| dns_zone.aug | File | 2.89 KB | 0644 |
|
| dnsmasq.aug | File | 2.16 KB | 0644 |
|
| dovecot.aug | File | 3.98 KB | 0644 |
|
| dpkg.aug | File | 2.78 KB | 0644 |
|
| dput.aug | File | 2.16 KB | 0644 |
|
| erlang.aug | File | 4.33 KB | 0644 |
|
| ethers.aug | File | 663 B | 0644 |
|
| exports.aug | File | 2.37 KB | 0644 |
|
| fai_diskconfig.aug | File | 9.28 KB | 0644 |
|
| fail2ban.aug | File | 1.79 KB | 0644 |
|
| fonts.aug | File | 819 B | 0644 |
|
| fstab.aug | File | 1.23 KB | 0644 |
|
| fuse.aug | File | 871 B | 0644 |
|
| gdm.aug | File | 1.8 KB | 0644 |
|
| getcap.aug | File | 1.57 KB | 0644 |
|
| group.aug | File | 1.66 KB | 0644 |
|
| grub.aug | File | 11.05 KB | 0644 |
|
| grubenv.aug | File | 508 B | 0644 |
|
| gshadow.aug | File | 2.19 KB | 0644 |
|
| gtkbookmarks.aug | File | 855 B | 0644 |
|
| host_conf.aug | File | 1.9 KB | 0644 |
|
| hostname.aug | File | 435 B | 0644 |
|
| hosts.aug | File | 485 B | 0644 |
|
| hosts_access.aug | File | 4.32 KB | 0644 |
|
| htpasswd.aug | File | 1.02 KB | 0644 |
|
| httpd.aug | File | 7.35 KB | 0644 |
|
| inetd.aug | File | 6.22 KB | 0644 |
|
| inifile.aug | File | 15.49 KB | 0644 |
|
| inittab.aug | File | 780 B | 0644 |
|
| inputrc.aug | File | 1.62 KB | 0644 |
|
| interfaces.aug | File | 4.62 KB | 0644 |
|
| iproute2.aug | File | 323 B | 0644 |
|
| iptables.aug | File | 2.64 KB | 0644 |
|
| iscsid.aug | File | 684 B | 0644 |
|
| jaas.aug | File | 1.57 KB | 0644 |
|
| jettyrealm.aug | File | 1.52 KB | 0644 |
|
| jmxaccess.aug | File | 1.35 KB | 0644 |
|
| jmxpassword.aug | File | 1.34 KB | 0644 |
|
| json.aug | File | 2.15 KB | 0644 |
|
| kdump.aug | File | 3.06 KB | 0644 |
|
| keepalived.aug | File | 10.73 KB | 0644 |
|
| known_hosts.aug | File | 1.93 KB | 0644 |
|
| koji.aug | File | 898 B | 0644 |
|
| krb5.aug | File | 6.98 KB | 0644 |
|
| ldif.aug | File | 7.65 KB | 0644 |
|
| ldso.aug | File | 1.06 KB | 0644 |
|
| lightdm.aug | File | 1.75 KB | 0644 |
|
| limits.aug | File | 2.02 KB | 0644 |
|
| login_defs.aug | File | 615 B | 0644 |
|
| logrotate.aug | File | 4.23 KB | 0644 |
|
| logwatch.aug | File | 1.44 KB | 0644 |
|
| lokkit.aug | File | 2.16 KB | 0644 |
|
| lvm.aug | File | 2.03 KB | 0644 |
|
| mailscanner.aug | File | 1.66 KB | 0644 |
|
| mailscanner_rules.aug | File | 2.84 KB | 0644 |
|
| masterpasswd.aug | File | 4.36 KB | 0644 |
|
| mcollective.aug | File | 1.09 KB | 0644 |
|
| mdadm_conf.aug | File | 10.05 KB | 0644 |
|
| memcached.aug | File | 1.24 KB | 0644 |
|
| mke2fs.aug | File | 6.29 KB | 0644 |
|
| modprobe.aug | File | 3.34 KB | 0644 |
|
| modules.aug | File | 741 B | 0644 |
|
| modules_conf.aug | File | 1.04 KB | 0644 |
|
| mongodbserver.aug | File | 1.17 KB | 0644 |
|
| monit.aug | File | 2.13 KB | 0644 |
|
| multipath.aug | File | 4.21 KB | 0644 |
|
| mysql.aug | File | 1.95 KB | 0644 |
|
| nagioscfg.aug | File | 2.09 KB | 0644 |
|
| nagiosobjects.aug | File | 1.57 KB | 0644 |
|
| netmasks.aug | File | 1.69 KB | 0644 |
|
| networkmanager.aug | File | 2.18 KB | 0644 |
|
| networks.aug | File | 1.09 KB | 0644 |
|
| nginx.aug | File | 3.65 KB | 0644 |
|
| nrpe.aug | File | 1.78 KB | 0644 |
|
| nslcd.aug | File | 9.87 KB | 0644 |
|
| nsswitch.aug | File | 2.33 KB | 0644 |
|
| ntp.aug | File | 5.29 KB | 0644 |
|
| ntpd.aug | File | 4.75 KB | 0644 |
|
| odbc.aug | File | 1.42 KB | 0644 |
|
| opendkim.aug | File | 3.1 KB | 0644 |
|
| openshift_config.aug | File | 2.46 KB | 0644 |
|
| openshift_http.aug | File | 1.03 KB | 0644 |
|
| openshift_quickstarts.aug | File | 1.02 KB | 0644 |
|
| openvpn.aug | File | 22.28 KB | 0644 |
|
| oz.aug | File | 1.35 KB | 0644 |
|
| pagekite.aug | File | 2.6 KB | 0644 |
|
| pam.aug | File | 2.58 KB | 0644 |
|
| pamconf.aug | File | 1.23 KB | 0644 |
|
| passwd.aug | File | 3.52 KB | 0644 |
|
| pbuilder.aug | File | 638 B | 0644 |
|
| pg_hba.aug | File | 2.97 KB | 0644 |
|
| pgbouncer.aug | File | 1.43 KB | 0644 |
|
| php.aug | File | 2.34 KB | 0644 |
|
| phpvars.aug | File | 3.85 KB | 0644 |
|
| postfix_access.aug | File | 771 B | 0644 |
|
| postfix_main.aug | File | 1.52 KB | 0644 |
|
| postfix_master.aug | File | 1.9 KB | 0644 |
|
| postfix_passwordmap.aug | File | 1.28 KB | 0644 |
|
| postfix_sasl_smtpd.aug | File | 697 B | 0644 |
|
| postfix_transport.aug | File | 1.48 KB | 0644 |
|
| postfix_virtual.aug | File | 1.32 KB | 0644 |
|
| postgresql.aug | File | 2.1 KB | 0644 |
|
| properties.aug | File | 2.3 KB | 0644 |
|
| protocols.aug | File | 1.05 KB | 0644 |
|
| puppet.aug | File | 1.52 KB | 0644 |
|
| puppet_auth.aug | File | 1.95 KB | 0644 |
|
| puppetfile.aug | File | 2.27 KB | 0644 |
|
| puppetfileserver.aug | File | 3.12 KB | 0644 |
|
| pylonspaste.aug | File | 2.3 KB | 0644 |
|
| pythonpaste.aug | File | 1.99 KB | 0644 |
|
| qpid.aug | File | 670 B | 0644 |
|
| quote.aug | File | 6.71 KB | 0644 |
|
| rabbitmq.aug | File | 4.69 KB | 0644 |
|
| radicale.aug | File | 1.48 KB | 0644 |
|
| rancid.aug | File | 927 B | 0644 |
|
| redis.aug | File | 6.5 KB | 0644 |
|
| reprepro_uploaders.aug | File | 5.47 KB | 0644 |
|
| resolv.aug | File | 4.03 KB | 0644 |
|
| rhsm.aug | File | 1.1 KB | 0644 |
|
| rmt.aug | File | 788 B | 0644 |
|
| rsyncd.aug | File | 1.97 KB | 0644 |
|
| rsyslog.aug | File | 3.27 KB | 0644 |
|
| rtadvd.aug | File | 854 B | 0644 |
|
| rx.aug | File | 4.2 KB | 0644 |
|
| samba.aug | File | 1.71 KB | 0644 |
|
| schroot.aug | File | 1.79 KB | 0644 |
|
| securetty.aug | File | 450 B | 0644 |
|
| semanage.aug | File | 1.02 KB | 0644 |
|
| sep.aug | File | 1.28 KB | 0644 |
|
| services.aug | File | 2.82 KB | 0644 |
|
| shadow.aug | File | 2.35 KB | 0644 |
|
| shells.aug | File | 745 B | 0644 |
|
| shellvars.aug | File | 12.02 KB | 0644 |
|
| shellvars_list.aug | File | 1.74 KB | 0644 |
|
| simplelines.aug | File | 1.13 KB | 0644 |
|
| simplevars.aug | File | 1.4 KB | 0644 |
|
| sip_conf.aug | File | 1.61 KB | 0644 |
|
| slapd.aug | File | 5.2 KB | 0644 |
|
| smbusers.aug | File | 781 B | 0644 |
|
| solaris_system.aug | File | 3.15 KB | 0644 |
|
| soma.aug | File | 1.14 KB | 0644 |
|
| sos.aug | File | 807 B | 0644 |
|
| spacevars.aug | File | 1.42 KB | 0644 |
|
| splunk.aug | File | 1.64 KB | 0644 |
|
| squid.aug | File | 15.95 KB | 0644 |
|
| ssh.aug | File | 4.39 KB | 0644 |
|
| sshd.aug | File | 4.74 KB | 0644 |
|
| sssd.aug | File | 861 B | 0644 |
|
| star.aug | File | 941 B | 0644 |
|
| strongswan.aug | File | 1.63 KB | 0644 |
|
| stunnel.aug | File | 2.21 KB | 0644 |
|
| subversion.aug | File | 2.75 KB | 0644 |
|
| sudoers.aug | File | 20.08 KB | 0644 |
|
| sysconfig.aug | File | 2.49 KB | 0644 |
|
| sysconfig_route.aug | File | 2.55 KB | 0644 |
|
| sysctl.aug | File | 1.36 KB | 0644 |
|
| syslog.aug | File | 7.33 KB | 0644 |
|
| systemd.aug | File | 6 KB | 0644 |
|
| termcap.aug | File | 1.03 KB | 0644 |
|
| thttpd.aug | File | 1.31 KB | 0644 |
|
| tinc.aug | File | 1.08 KB | 0644 |
|
| tmpfiles.aug | File | 3.16 KB | 0644 |
|
| toml.aug | File | 4.24 KB | 0644 |
|
| trapperkeeper.aug | File | 4.01 KB | 0644 |
|
| tuned.aug | File | 387 B | 0644 |
|
| up2date.aug | File | 2.21 KB | 0644 |
|
| updatedb.aug | File | 1.13 KB | 0644 |
|
| util.aug | File | 4.85 KB | 0644 |
|
| vfstab.aug | File | 1.71 KB | 0644 |
|
| vmware_config.aug | File | 702 B | 0644 |
|
| vsftpd.aug | File | 2.72 KB | 0644 |
|
| webmin.aug | File | 1.23 KB | 0644 |
|
| wine.aug | File | 1.92 KB | 0644 |
|
| xendconfsxp.aug | File | 1.07 KB | 0644 |
|
| xinetd.aug | File | 4.02 KB | 0644 |
|
| xml.aug | File | 6.33 KB | 0644 |
|
| xorg.aug | File | 10.43 KB | 0644 |
|
| xymon.aug | File | 2.26 KB | 0644 |
|
| xymon_alerting.aug | File | 6.11 KB | 0644 |
|
| yaml.aug | File | 1.54 KB | 0644 |
|
| yum.aug | File | 2.19 KB | 0644 |
|