Skip to main content

Python package template.

Project description

Overview

Usage examples

import pipelined

def detect_ddos(stream):
    access = pipelined.utils.limit_counter(10*1000)
    for log in stream:
        access[log.ip] += 1
        yield from access.over(100)

def block_ips(stream):
    for ip in stream:
        # block the ip
        yield ip

ddos_monitor = [
    detect_ddos,
    block_ips,
]

source_logs = pipelined.files.follow('/path/to/server/access.log')
for ip in pipelined.run(ddos_monitor, source_logs):
    print(ip, "has been blocked.")

License

See LICENSE.

Project details


Supported by

Elastic Elastic Search Pingdom Pingdom Monitoring Google Google BigQuery Sentry Sentry Error logging AWS AWS Cloud computing DataDog DataDog Monitoring Fastly Fastly CDN DigiCert DigiCert EV certificate StatusPage StatusPage Status page