components/proftpd/dtrace/example.d
author David Hollister <david.hollister@oracle.com>
Wed, 12 Oct 2016 14:01:13 -0600
changeset 7094 61352b4e5af5
parent 3932 1b7dd68f6aa9
permissions -rw-r--r--
24797203 OpenStack RBAC profiles allow reading too many files 24797238 keystone RBAC and SMF should point at Apache log files 24797256 cinder RBAC and SMF should point at Apache log files 24830959 horizon RBAC and SMF should point at Apache log files
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
3932
1b7dd68f6aa9 20553228 add proftpd dtrace provider from AK to Userland
Tomas Klacko <tomas.klacko@oracle.com>
parents:
diff changeset
     1
#!/usr/sbin/dtrace -Zs
1b7dd68f6aa9 20553228 add proftpd dtrace provider from AK to Userland
Tomas Klacko <tomas.klacko@oracle.com>
parents:
diff changeset
     2
/*
1b7dd68f6aa9 20553228 add proftpd dtrace provider from AK to Userland
Tomas Klacko <tomas.klacko@oracle.com>
parents:
diff changeset
     3
 * Copyright (c) 2015, Oracle and/or its affiliates. All rights reserved.
1b7dd68f6aa9 20553228 add proftpd dtrace provider from AK to Userland
Tomas Klacko <tomas.klacko@oracle.com>
parents:
diff changeset
     4
 */
1b7dd68f6aa9 20553228 add proftpd dtrace provider from AK to Userland
Tomas Klacko <tomas.klacko@oracle.com>
parents:
diff changeset
     5
1b7dd68f6aa9 20553228 add proftpd dtrace provider from AK to Userland
Tomas Klacko <tomas.klacko@oracle.com>
parents:
diff changeset
     6
#pragma D option quiet
1b7dd68f6aa9 20553228 add proftpd dtrace provider from AK to Userland
Tomas Klacko <tomas.klacko@oracle.com>
parents:
diff changeset
     7
#pragma D option switchrate=10hz
1b7dd68f6aa9 20553228 add proftpd dtrace provider from AK to Userland
Tomas Klacko <tomas.klacko@oracle.com>
parents:
diff changeset
     8
1b7dd68f6aa9 20553228 add proftpd dtrace provider from AK to Userland
Tomas Klacko <tomas.klacko@oracle.com>
parents:
diff changeset
     9
dtrace:::BEGIN
1b7dd68f6aa9 20553228 add proftpd dtrace provider from AK to Userland
Tomas Klacko <tomas.klacko@oracle.com>
parents:
diff changeset
    10
{
1b7dd68f6aa9 20553228 add proftpd dtrace provider from AK to Userland
Tomas Klacko <tomas.klacko@oracle.com>
parents:
diff changeset
    11
    printf("%-20s %-8s %9s %-5s %-6s %s\n", "CLIENT", "USER", "LAT(us)",
1b7dd68f6aa9 20553228 add proftpd dtrace provider from AK to Userland
Tomas Klacko <tomas.klacko@oracle.com>
parents:
diff changeset
    12
        "DIR", "BYTES", "PATH");
1b7dd68f6aa9 20553228 add proftpd dtrace provider from AK to Userland
Tomas Klacko <tomas.klacko@oracle.com>
parents:
diff changeset
    13
}
1b7dd68f6aa9 20553228 add proftpd dtrace provider from AK to Userland
Tomas Klacko <tomas.klacko@oracle.com>
parents:
diff changeset
    14
1b7dd68f6aa9 20553228 add proftpd dtrace provider from AK to Userland
Tomas Klacko <tomas.klacko@oracle.com>
parents:
diff changeset
    15
ftp*:::transfer-start
1b7dd68f6aa9 20553228 add proftpd dtrace provider from AK to Userland
Tomas Klacko <tomas.klacko@oracle.com>
parents:
diff changeset
    16
{
1b7dd68f6aa9 20553228 add proftpd dtrace provider from AK to Userland
Tomas Klacko <tomas.klacko@oracle.com>
parents:
diff changeset
    17
    self->start = timestamp;
1b7dd68f6aa9 20553228 add proftpd dtrace provider from AK to Userland
Tomas Klacko <tomas.klacko@oracle.com>
parents:
diff changeset
    18
}
1b7dd68f6aa9 20553228 add proftpd dtrace provider from AK to Userland
Tomas Klacko <tomas.klacko@oracle.com>
parents:
diff changeset
    19
1b7dd68f6aa9 20553228 add proftpd dtrace provider from AK to Userland
Tomas Klacko <tomas.klacko@oracle.com>
parents:
diff changeset
    20
ftp*:::transfer-done
1b7dd68f6aa9 20553228 add proftpd dtrace provider from AK to Userland
Tomas Klacko <tomas.klacko@oracle.com>
parents:
diff changeset
    21
/self->start/
1b7dd68f6aa9 20553228 add proftpd dtrace provider from AK to Userland
Tomas Klacko <tomas.klacko@oracle.com>
parents:
diff changeset
    22
{
1b7dd68f6aa9 20553228 add proftpd dtrace provider from AK to Userland
Tomas Klacko <tomas.klacko@oracle.com>
parents:
diff changeset
    23
    this->delta = (timestamp - self->start) / 1000;
1b7dd68f6aa9 20553228 add proftpd dtrace provider from AK to Userland
Tomas Klacko <tomas.klacko@oracle.com>
parents:
diff changeset
    24
    printf("%-20s %-8s %9d %-5s %-6d %s\n", args[0]->ci_remote,
1b7dd68f6aa9 20553228 add proftpd dtrace provider from AK to Userland
Tomas Klacko <tomas.klacko@oracle.com>
parents:
diff changeset
    25
    args[1]->fti_user, this->delta, args[1]->fti_cmd,
1b7dd68f6aa9 20553228 add proftpd dtrace provider from AK to Userland
Tomas Klacko <tomas.klacko@oracle.com>
parents:
diff changeset
    26
    args[1]->fti_nbytes, args[1]->fti_pathname);
1b7dd68f6aa9 20553228 add proftpd dtrace provider from AK to Userland
Tomas Klacko <tomas.klacko@oracle.com>
parents:
diff changeset
    27
    self->start = 0;
1b7dd68f6aa9 20553228 add proftpd dtrace provider from AK to Userland
Tomas Klacko <tomas.klacko@oracle.com>
parents:
diff changeset
    28
}