入门系列之使用Sysdig监视您的Ubuntu 16.04系统

2023-11-20

欢迎大家前往腾讯云+社区,获取更多腾讯海量技术实践干货哦~

本文由乌鸦 发表于云+社区专栏

介绍

Sysdig是一个全面的开源系统活动监控,捕获和分析应用程序。它具有强大的过滤语言和可自定义的输出,以及可以使用称为chiselsLua脚本扩展的核心功能。

应用程序通过访问内核来工作, 内核允许它查看每个系统调用以及通过内核传递的所有信息。这也使其成为监视和分析系统上运行的应用程序容器生成的系统活动和事件的出色工具。

核心Sysdig应用程序监视其安装的服务器。但是,该项目背后的公司提供了一个名为Sysdig Cloud的托管版本,可以远程监控任意数量的服务器。

独立应用程序可在大多数Linux发行版上使用,但在Windows和macOS上也可用,功能更为有限。除了sysdig命令行工具,Sysdig还带有一个csysdig带有类似选项的交互式UI 。

在本教程中,您将安装并使用Sysdig来监视Ubuntu 16.04服务器。您将流式传输实时事件,将事件保存到文件,过滤结果以及浏览csysdig交互式UI。

准备

要完成本教程,您需要:

  • 一台Ubuntu 16.04 的服务器,已经设置好一个可以使用sudo命令的非root的账户。

第1步 - 使用官方脚本安装Sysdig

在Ubuntu存储库中有一个Sysdig包,但它通常是当前版本的一两个版本。例如,在发布时,使用Ubuntu的软件包管理器安装Sysdig将为您提供Sysdig 0.8.0。但是,您可以使用项目开发页面中的官方脚本来安装它,这是推荐的安装方法。这是我们将使用的方法。

但首先,更新包数据库以确保您拥有最新的可用包列表:

$ sudo apt-get update

现在curl使用以下命令下载Sysdig的安装脚本:

$ curl https://s3.amazonaws.com/download.draios.com/stable/install-sysdig -o install-sysdig

这会将安装脚本下载install-sysdig到当前文件夹的文件中。您需要使用提升的权限执行此脚本,并且运行从Internet下载的脚本是危险的。在执行脚本之前,通过在文本编辑器中打开它或使用less命令在屏幕上显示内容来审核其内容:

$ less ./install-sysdig

一旦您熟悉脚本将运行的命令,请使用以下命令执行脚本:

$ cat ./install-sysdig | sudo bash

命令将安装所有依赖项,包括内核头文件和模块。安装的输出类似于以下内容:

* Detecting operating system
* Installing Sysdig public key
OK
* Installing sysdig repository
* Installing kernel headers
* Installing sysdig

...

sysdig-probe:
Running module version sanity check.
 - Original module
   - No original module exists within this kernel
 - Installation
   - Installing to /lib/modules/4.4.0-59-generic/updates/dkms/

depmod....

DKMS: install completed.
Processing triggers for libc-bin (2.23-0ubuntu5) ...

现在您已经安装了Sysdig,让我们看一下使用它的一些方法。

第2步 - 实时监控您的系统

在本节中,您将使用 sysdig命令查看Ubuntu 16.04服务器上的某些事件。 sysdig命令需要root权限才能运行,并且它需要任意数量的选项和过滤器。运行 命令最简单的方法是不带任何参数。这将为您提供每两秒刷新一次的系统数据的实时视图:

$ sudo sysdig

但是,正如您在运行命令时所看到的那样,分析正在写入屏幕的数据可能很困难,因为它会持续流动,并且您的服务器上发生了很多事件。按下CTRL+C停止sysdig

在我们使用一些选项再次运行命令之前,让我们通过查看命令的示例输出来熟悉输出:

253566 11:16:42.808339958 0 sshd (12392) > rt_sigprocmask
253567 11:16:42.808340777 0 sshd (12392) < rt_sigprocmask
253568 11:16:42.808341072 0 sshd (12392) > rt_sigprocmask
253569 11:16:42.808341377 0 sshd (12392) < rt_sigprocmask
253570 11:16:42.808342432 0 sshd (12392) > clock_gettime
253571 11:16:42.808343127 0 sshd (12392) < clock_gettime
253572 11:16:42.808344269 0 sshd (12392) > read fd=10(<f>/dev/ptmx) size=16384
253573 11:16:42.808346955 0 sshd (12392) < read res=2 data=..

输出的列是:

%evt.num %evt.outputtime %evt.cpu %proc.name (%thread.tid) %evt.dir %evt.type %evt.info

以下是每列的含义:

  • evt.num是增量事件编号。
  • evt.outputtime是事件时间戳,您可以自定义。
  • evt.cpu是捕获事件的CPU编号。在上面的输出中,evt.cpu0,这是服务器的第一个CPU。
  • proc.name是生成事件的进程的名称。
  • thread.tid是生成事件的TID,它对应于单线程进程的PID。
  • evt.dir是事件方向。您将看到>用于输入事件和<用于退出事件。
  • evt.type是事件的名称,例如’open’,’read’,’write’等。
  • evt.info是事件参数列表。在系统调用的情况下,这些往往对应于系统调用参数,但情况并非总是如此:出于简单性或性能原因,排除了一些系统调用参数。

像上一个sysdig命令一样,运行几乎没有任何价值,因为流入的信息太多了。但是您可以使用以下语法对命令应用选项和过滤器:

$ sudo sysdig [option] [filter]

您可以使用以下方法查看可用过滤器的完整列表:

$ sysdig -l

有一个广泛的过滤器列表,涵盖了几个类或类别。以下是一些课程:

  • fd:过滤文件描述符(FD)信息,如FD编号和FD名称。
  • process:过滤进程信息,例如生成事件的进程的id和名称。
  • evt:过滤事件信息,如事件编号和时间。
  • user:过滤用户信息,如用户ID,用户名,用户主目录或登录shell。
  • group:过滤组信息,例如组ID和名称。
  • syslog:过滤syslog信息,如设施和严重性。
  • fdlist:过滤轮询事件的文件描述符。

由于本教程中的每个过滤器都不实用,所以让我们尝试一下,从syslog类中的syslog.severity.str过滤器开始,它允许您查看以特定严重性级别发送到syslog的消息。此命令显示在“信息”级别发送到syslog的消息:

$ sudo sysdig syslog.severity.str=info

注意:根据服务器上的活动级别,在输入此命令后可能看不到任何输出,或者在看到任何输出之前可能需要很长时间。要强制发出问题,请打开另一个终端模拟器并执行将向syslog生成消息的操作。例如,执行包更新,升级系统或安装任何包。

按下CTRL+C即可终止命令。

输出应 很容易解释,看起来应 是这样的:

10716 03:15:37.111266382 0 sudo (26322) < sendto syslog sev=info msg=Jan 24 03:15:37 sudo: pam_unix(sudo:session): session opened for user root b
618099 03:15:57.643458223 0 sudo (26322) < sendto syslog sev=info msg=Jan 24 03:15:57 sudo: pam_unix(sudo:session): session closed for user root
627648 03:16:23.212054906 0 sudo (27039) < sendto syslog sev=info msg=Jan 24 03:16:23 sudo: pam_unix(sudo:session): session opened for user root b
629992 03:16:23.248012987 0 sudo (27039) < sendto syslog sev=info msg=Jan 24 03:16:23 sudo: pam_unix(sudo:session): session closed for user root
639224 03:17:01.614343568 0 cron (27042) < sendto syslog sev=info msg=Jan 24 03:17:01 CRON[27042]: pam_unix(cron:session): session opened for user
639530 03:17:01.615731821 0 cron (27043) < sendto syslog sev=info msg=Jan 24 03:17:01 CRON[27043]: (root) CMD (   cd / && run-parts --report /etc/
640031 03:17:01.619412864 0 cron (27042) < sendto syslog sev=info msg=Jan 24 03:17:01 CRON[27042]: pam_unix(cron:session): 

您还可以过滤单个流程。例如,从nano上查看事件,请执行以下命令:

$ sudo sysdig proc.name=nano

由于此命令文件管理器已启用nano,您必须使用nano文本编辑器打开文件以查看任何输出。打开另一个终端编辑器,连接到您的服务器,然后使用nano打开文本文件。写几个字符并保存文件。然后返回原始终端。

然后,您将看到类似于此的一些输出:

21840 11:26:33.390634648 0 nano (27291) < mmap res=7F517150A000 vm_size=8884 vm_rss=436 vm_swap=0
21841 11:26:33.390654669 0 nano (27291) > close fd=3(<f>/lib/x86_64-linux-gnu/libc.so.6)
21842 11:26:33.390657136 0 nano (27291) < close res=0
21843 11:26:33.390682336 0 nano (27291) > access mode=0(F_OK)
21844 11:26:33.390690897 0 nano (27291) < access res=-2(ENOENT) name=/etc/ld.so.nohwcap
21845 11:26:33.390695494 0 nano (27291) > open
21846 11:26:33.390708360 0 nano (27291) < open fd=3(<f>/lib/x86_64-linux-gnu/libdl.so.2) name=/lib/x86_64-linux-gnu/libdl.so.2 flags=4097(O_RDONLY|O_CLOEXEC) mode=0
21847 11:26:33.390710510 0 nano (27291) > read fd=3(<f>/lib/x86_64-linux-gnu/libdl.so.2) size=832

再次,通过按下CTRL+C来终止命令。

获取系统事件的实时视图sysdig并不总是使用它的最佳方法。幸运的是,还有另一种方法 - 将事件捕获到文件中以便稍后进行分析。我们来看看如何。

第3步 - 使用Sysdig捕获系统活动到文件

使用系统事件捕获文件可以sysdig让您在以后分析这些事件。为了节省系统事件记录到文件中,传递sysdig-w选项,并指定目标文件名,如下所示:

$ sudo sysdig -w sysdig-trace-file.scap

Sysdig将继续将生成的事件保存到目标文件,直到您按下为止CTRL+C。随着时间的推移, 文件可能会变得非常大。但是,使用-n选项,您可以指定希望Sysdig捕获的事件数。捕获目标事件数后,它将退出。例如,要将300个事件保存到文件,请输入:

$ sudo sysdig -n 300 -w sysdig-file.scap

虽然您可以使用Sysdig将指定数量的事件捕获到文件中,但更好的方法是使用-C选项将捕获分解为特定大小的较小文件。为了不淹没本地存储,您可以指示Sysdig只保留一些保存的文件。换句话说,Sysdig支持在一个命令中将事件捕获到具有文件轮换的日志。

例如,要将事件连续保存到大小不超过1 MB的文件中,并且只保留最后五个文件(这是-W选项的作用),请执行以下命令:

$ sudo sysdig -C 1 -W 5 -w sysdig-trace.scap

列出使用的文件ls -l sysdig-trace*,你会看到与此类似的输出,有五个日志文件:

-rw-r--r-- 1 root root 985K Nov 23 04:13 sysdig-trace.scap0
-rw-r--r-- 1 root root 952K Nov 23 04:14 sysdig-trace.scap1
-rw-r--r-- 1 root root 985K Nov 23 04:13 sysdig-trace.scap2
-rw-r--r-- 1 root root 985K Nov 23 04:13 sysdig-trace.scap3
-rw-r--r-- 1 root root 985K Nov 23 04:13 sysdig-trace.scap4

与实时捕获一样,您可以对已保存的事件应用过滤器。例如,要保存进程生成的200个事件nano,请输入以下命令:

$ sudo sysdig -n 200 -w sysdig-trace-nano.scap proc.name=nano

然后,在连接到服务器的另一个终端中,打开文件nano并通过输入文本或保存文件生成一些事件。将捕获事件sysdig-trace-nano.scap直到sysdig记录200个事件。

您将如何捕获服务器上生成的所有写入事件?你会像这样应用过滤器:

$ sudo sysdig -w sysdig-write-events.scap evt.type=write

片刻之后按下CTRL+C退出。在将系统活动保存到文件时,您可以做更多的事情sysdig,但是这些示例应 让您非常清楚如何去做。我们来看看如何分析这些文件。

第4步 - 使用Sysdig读取和分析事件数据

使用Sysdig从文件中读取捕获的数据就像将-r开关传递给sysdig命令一样简单,如下所示:

$ sudo sysdig -r sysdig-trace-file.scap

这会将文件的整个内容转储到屏幕上,这不是最好的方法,特别是如果文件很大的话。幸运的是,您可以在读取写入时应用的文件时应用相同的过滤器。

例如,要读取sysdig-trace-nano.scap您创建的跟踪文件,但只查看特定类型的事件(如写入事件),请输入以下命令:

$ sysdig -r sysdig-trace-nano.scap evt.type=write

输出应类似于:

21340 13:32:14.577121096 0 nano (27590) < write res=1 data=.
21736 13:32:17.378737309 0 nano (27590) > write fd=1 size=23
21737 13:32:17.378748803 0 nano (27590) < write res=23 data=#This is a test file..#
21752 13:32:17.611797048 0 nano (27590) > write fd=1 size=24
21753 13:32:17.611808865 0 nano (27590) < write res=24 data= This is a test file..#  
21768 13:32:17.992495582 0 nano (27590) > write fd=1 size=25
21769 13:32:17.992504622 0 nano (27590) < write res=25 data=TThis is a test file..# T
21848 13:32:18.338497906 0 nano (27590) > write fd=1 size=25
21849 13:32:18.338506469 0 nano (27590) < write res=25 data=hThis is a test file..[5G
21864 13:32:18.500692107 0 nano (27590) > write fd=1 size=25
21865 13:32:18.500714395 0 nano (27590) < write res=25 data=iThis is a test file..[6G
21880 13:32:18.529249448 0 nano (27590) > write fd=1 size=25
21881 13:32:18.529258664 0 nano (27590) < write res=25 data=sThis is a test file..[7G
21896 13:32:18.620305802 0 nano (27590) > write fd=1 size=25

让我们看一下您在上一节中保存的文件的内容:sysdig-write-events.scap文件。我们知道保存到文件中的所有事件都是写事件,所以让我们查看内容:

$ sudo sysdig -r sysdig-write-events.scap evt.type=write

这是部分输出。如果捕获事件时服务器上有任何SSH活动,您将看到类似的内容:

42585 19:58:03.040970004 0 gmain (14818) < write res=8 data=........
42650 19:58:04.279052747 0 sshd (22863) > write fd=3(<4t>11.11.11.11:43566->22.22.22.22:ssh) size=28
42651 19:58:04.279128102 0 sshd (22863) < write res=28 data=.8c..jp...P........s.E<...s.
42780 19:58:06.046898181 0 sshd (12392) > write fd=3(<4t>11.11.11.11:51282->22.22.22.22:ssh) size=28
42781 19:58:06.046969936 0 sshd (12392) < write res=28 data=M~......V.....Z...\..o...N..
42974 19:58:09.338168745 0 sshd (22863) > write fd=3(<4t>11.11.11.11:43566->22.22.22.22:ssh) size=28
42975 19:58:09.338221272 0 sshd (22863) < write res=28 data=66..J.._s&U.UL8..A....U.qV.*
43104 19:58:11.101315981 0 sshd (12392) > write fd=3(<4t>11.11.11.11:51282->22.22.22.22:ssh) size=28
43105 19:58:11.101366417 0 sshd (12392) < write res=28 data=d).(...e....l..D.*_e...}..!e
43298 19:58:14.395655322 0 sshd (22863) > write fd=3(<4t>11.11.11.11:43566->22.22.22.22:ssh) size=28
43299 19:58:14.395701578 0 sshd (22863) < write res=28 data=.|.o....\...V...2.$_...{3.3|
43428 19:58:16.160703443 0 sshd (12392) > write fd=3(<4t>11.11.11.11:51282->22.22.22.22:ssh) size=28
43429 19:58:16.160788675 0 sshd (12392) < write res=28 data=..Hf.%.Y.,.s...q...=..(.1De.
43622 19:58:19.451623249 0 sshd (22863) > write fd=3(<4t>11.11.11.11:43566->22.22.22.22:ssh) size=28
43623 19:58:19.451689929 0 sshd (22863) < write res=28 data=.ZT^U.pN....Q.z.!.i-Kp.o.y..
43752 19:58:21.216882561 0 sshd (12392) > write fd=3(<4t>11.11.11.11:51282->22.22.22.22:ssh) size=28

请注意,前面输出中的所有行都包含11.11.11.11:51282->22.22.22.22:ssh。这些是从客户端的外部IP地址11.11.11.11到服务器22.22.22.22的IP地址的事件。这些事件发生在与服务器的SSH连接上,因此需要这些事件。但是有没有其他SSH写事件不是来自这个已知的客户端IP地址?这很容易找到。

您可以使用Sysdig的许多比较运算符。你看到的第一个是=。其他的是!=>> =<<=。在以下命令中,fd.rip过滤远程IP地址。我们将使用!=比较运算符来查找来自以下IP地址的事件:

$ sysdig -r sysdig-write-events.scap fd.rip!=11.11.11.11

以下输出中显示了部分输出, 输出显示存在来自客户端IP地址以外的IP地址的写入事件:

294479 21:47:47.812314954 0 sshd (28766) > read fd=3(<4t>33.33.33.33:49802->22.22.22.22:ssh) size=1
294480 21:47:47.812315804 0 sshd (28766) < read res=1 data=T
294481 21:47:47.812316247 0 sshd (28766) > read fd=3(<4t>33.33.33.33:49802->22.22.22.22:ssh) size=1
294482 21:47:47.812317094 0 sshd (28766) < read res=1 data=Y
294483 21:47:47.812317547 0 sshd (28766) > read fd=3(<4t>33.33.33.33:49802->22.22.22.22:ssh) size=1
294484 21:47:47.812318401 0 sshd (28766) < read res=1 data=.
294485 21:47:47.812318901 0 sshd (28766) > read fd=3(<4t>33.33.33.33:49802->22.22.22.22:ssh) size=1
294486 21:47:47.812320884 0 sshd (28766) < read res=1 data=.
294487 21:47:47.812349108 0 sshd (28766) > fcntl fd=3(<4t>33.33.33.33:49802->22.22.22.22:ssh) cmd=4(F_GETFL)
294488 21:47:47.812350355 0 sshd (28766) < fcntl res=2(<f>/dev/null)
294489 21:47:47.812351048 0 sshd (28766) > fcntl fd=3(<4t>33.33.33.33:49802->22.22.22.22:ssh) cmd=5(F_SETFL)
294490 21:47:47.812351918 0 sshd (28766) < fcntl res=0(<f>/dev/null)
294554 21:47:47.813383844 0 sshd (28767) > write fd=3(<4t>33.33.33.33:49802->22.22.22.22:ssh) size=976
294555 21:47:47.813395154 0 sshd (28767) < write res=976 data=........zt.....L.....}....curve25519-sha256@libssh.org,ecdh-sha2-nistp256,ecdh-s
294691 21:47:48.039025654 0 sshd (28767) > read fd=3(<4t>221.229.172.117:49802->45.55.71.190:ssh) size=8192

进一步调查还显示,流氓IP地址33.33.33.33属于中国的一台机器。这是值得担心的事情!这只是一个例子,说明如何使用Sysdig密切注意服务器上的流量。

让我们看一下使用一些额外的脚本来分析事件流。

第5步 - 使用Sysdigchisels进行系统监控和分析

在Sysdig的说法中,chisels是可以使用的Lua脚本,用于分析Sysdig事件流以执行有用的操作。每个Sysdig安装都附带有近50个脚本,您可以使用以下命令查看系统上可用的chisels列表:

$ sysdig -cl

一些更有趣的chisels包括:

  • netstat:列出(并可选择过滤)网络连接。
  • shellshock_detect:打印shellshock攻击
  • spy_users:显示交互式用户活动。
  • list login shells:列出登录shell ID。
  • spy_ip:显示使用给定IP地址交换的数据。
  • spy_port:显示使用给定IP端口号交换的数据。
  • spy_file:回显任何进程对所有文件的读取或写入。(可选)您可以提供文件名,以仅拦截对文件的读取或写入。
  • httptop:显示最热门的HTTP请求

有关chisels的更详细描述(包括任何相关参数),请使用-i标志,然后使用chisels的名称。因此,例如,要查看有关netstatchisels的更多信息,请输入:

$ sysdig -i netstat

既然您已经了解了使用 netstatchisels所需要知道的一切,请通过运行以下方式来监控系统:

$ sudo sysdig -c netstat

输出应类似于以下内容:

Proto Server Address           Client Address           State          TID/PID/Program Name
tcp   22.22.22.22:22           11.11.11.11:60422        ESTABLISHED    15567/15567/sshd
tcp   0.0.0.0:22               0.0.0.0:*                LISTEN         1613/1613/sshd

如果您在“ 客户端地址”列中看到来自您的IP地址以外的ESTABLISHED SSH连接,那么这应 是一个红色标记,您应 进行更深入的探测。

一个更有趣的chiselsspy_users,它允许您查看系统上的交互式用户活动。

退出此命令:

$ sudo sysdig -c spy_users

然后,打开第二个终端并连接到您的服务器。在第二个终端中执行一些命令,然后返回到终端运行sysdig。您在第一个终端中输入的命令将在您执行sysdig -c spy_users命令的终端上回显。

接下来,让我们探索一个图形工具Csysdig。

第6步 - 使用Csysdig进行系统监控和分析

Csysdig是Sysdig附带的另一个实用程序。它具有交互式用户界面,提供与命令行相同的功能sysdig。这就像tophtopstrace,但功能丰富的多。

sysdig命令一样, csysdig命令可以执行实时监视,并可以将事件捕获到文件中以供以后分析。但是csysdig,您可以每两秒刷新一次更实用的系统数据实时视图。要查看示例,请输入以下命令:

$ sudo csysdig

这将打开如下图所示的界面, 界面显示受监控主机上的所有用户和应用程序生成的事件数据。

imgCsysdig的主界面

在界面的底部有几个按钮,您可以使用它们来访问程序的不同方面。最值得注意的是“ 视图”按钮,它类似于收集的指标类别csysdig。开箱即用的视图有29个,包括进程系统调用线程容器进程CPU页面错误文件目录

当您在csysdig没有参数的情况下启动时 ,您将从“ 进程”视图中看到实时事件。通过单击“ 视图”按钮或F2按键,您将看到可用视图列表,包括列的说明。您还可以通过F7按键或单击“ 图例”按钮来查看列的说明。csysdig通过F1按键或单击“ 帮助”按钮,可以访问应用程序本身()的摘要手册页。

下图显示了应用程序的Views界面的列表。

imgCsysdig视图窗口

注意:对于每个按钮,按钮的左侧都有相应的键盘快捷键或热键。按两次快捷键将返回上一个窗口。按下ESC键将获得相同的结果。

虽然你可以在csysdig没有任何选项和参数的情况下运行,但命令的语法与sysdigs一样,通常采用以下形式:

$ sudo csysdig [option]...  [filter]

最常见的选项是-d,用于修改更新之间的延迟(以毫秒为单位)。例如,要查看csysdig每10秒更新一次的输出,而不是默认值2秒,请输入:

$ sudo csysdig -d 10000

您可以使用-E选项从视图中排除用户和组信息:

$ sudo csysdig -E

这可以使csysdig启动更快,但在大多数情况下速度增益可以忽略不计。

要指示csysdig在一定数量的事件后停止捕获,请使用-n选项。应用程序将在达到 数字后退出。被捕获事件的数量必须在五个数字中; 否则你甚至不会看到csysdigUI:

$ sudo csysdig -n 100000

分析跟踪文件,通过csysdig-r选项,如下所示:

$ sudo csysdig -r sysdig-trace-file.scap

您可以使用与之相同的过滤器sysdig来限制csysdig输出。因此,例如,您可以通过csysdig使用以下命令启动用户来过滤用户输出,而不是查看系统上所有用户生成的事件数据, 命令将显示仅由root用户生成的事件数据:

$ sudo csysdig user.name=root

输出应类似于下图中显示的输出,但输出将反映服务器上正在运行的内容:

imgroot生成的Csysdig数据

要查看生成事件的可执行文件的输出,请将过滤器的名称传递给不带路径的二进制文件。以下示例将显示 nano命令生成的所有事件。换句话说,它将显示文本编辑器所在的所有打开文件nano

$ sudo csysdig proc.name=nano

有几十个可用的过滤器,您可以使用以下命令查看:

$ sudo csysdig -l

您会注意到,这与您用于查看sysdig命令可用的过滤器的选项相同。所以sysdigcsysdig几乎是一样的。主要区别在于csysdig鼠标友好的交互式UI。要csysdig随时退出,请按Q键盘上的键。

结论

Sysdig可帮助您监控服务器并对其进行故障排除。它将使您深入了解受监视主机上的所有系统活动,包括应用程序容器生成的活动。虽然本教程未特别涵盖容器,但监视容器生成的系统活动的能力使Sysdig与类似的应用程序区别开来。项目主页上提供了更多信息。

Sysdig的chisels是核心Sysdig功能的强大扩展。它们是用Lua编写的,所以你总是可以自定义它们或者从头开始编写它们。要了解有关制作chisels的更多信息,请访问 项目的官方chisels 页面

如果您对其他监视系统的工具,例如:使用Ubuntu 16.04上的osquery监视系统安全性,可以访问腾讯云访问更多的教程。


参考文献:《How To Monitor Your Ubuntu 16.04 System with Sysdig》

问答

在Ubuntu上安装cassandra?

相关阅读

如何保护PostgreSQL免受攻击

Ubuntu 16.04上如何使用Alertmanager和Blackbox导出程序监视Web服务器

MariaDB Galera集群入门教程

此文已由作者授权腾讯云+社区发布,原文链接:https://cloud.tencent.com/developer/article/1172074?fromSource=waitui

欢迎大家前往腾讯云+社区或关注云加社区微信公众号(QcloudCommunity),第一时间获取更多海量技术实践干货哦~

海量技术实践经验,尽在云加社区

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

入门系列之使用Sysdig监视您的Ubuntu 16.04系统 的相关文章

随机推荐

  • Python安装教程(版本3.8.10)windows10

    Python目前已支持市面上的各大主流操作系统 在Linux Unix Mac系统已经自带Python环境 本章将介绍在Windows系统上安装Python 一般下载 executable installer x86 表示是 32 位的机器
  • 基于Python Django 搜索的目标站点内容监测系统设计

    1 简介 基于搜索的目标站点内容监测系统 包括登陆 首页 数据采集 爬虫分析 数据管理 修改密码和用户管理等功能 2 技术栈 说明 技术栈 备注 后台 Python Django 前端 HTML 数据库 MYSql 架构 B S 结构 3
  • MySQL数据库保姆级安装教程

    俗话说从入门到放弃 从入门到入土 开始学习MySQL之前我们一定是要做环境准备的 接下来我们来讲解一下MySQL的安装 一 MySQL下载 MySQL 1 大家可以尝试在官网首页寻找下载入口 也可以使用我提供的MySQL的安装包进行下载安装
  • 数据结构之双向链表,实现双向链表的增删改查

    目录 一 双向链表的定义 1 双向链表节点的定义 2 双向链表的初始化 二 双向链表的函数接口实现 1 双链表的尾插 2 双向链表的尾删 3 双向链表的头插 4 双向链表的头删 6 双向链表在pos前面插入 7 双向链表删除pos位置的节点
  • 1.Twitter开发者之如何申请一个twitter开发者账号

    Twitter开发者之如何申请一个twitter开发者账号 教大家申请一个推特开发者账号满足后面的使用 保证每一步都给大家介绍到 非常详细 希望帮助大家注册好自己的账号 1 先打开Twitter的账号注册界面 选择使用手机号码或电子邮箱注册
  • C51单片机实验——脉冲计数显示(proteus+asm)

    前言 脉冲信号输入进2级74LS14整形 T1接收脉冲信号并计数 显示在LED 外部中断0控制计数器的启动 停止 外部中断1控制计数器的清零复位 P1 0控制LED的段选口使能信号 P1 1控制LED的位选口使能信号 Proteus电路图
  • ios代码大全】代码例子区全区搜索索引

    IOS 类代码 我自己做的翻书效果 小猫咪再次登场 2011 03 02 如何实现QQLive HD界面 附代码 2011 03 02 tabelviewcell 点击设置背景图片 2011 03 02 基于UDP的聊天程序 借鉴iphon
  • OpenGL ES 3.0 Programming Guide 1-3

    一 introduction to OGLES 3 0 OGLES 3 0 Graphics Pipeline VertexBuffer ArrayObj gt VertexShader texture transform feedback
  • C51的1602LCD液晶显示

    C51的1602LCD液晶显示 1 引脚功能介绍 2 基本操作时序 3 1602 液晶的指令介绍 4 实例 1 引脚功能介绍 1602 液晶就是可以显示 2 行 每行 16 个字符的液晶 一共 16 个引脚 每个引脚的功能 我们都可以在它的
  • redis操作 AOF RDB 主从复制 集群

    Redis操作 1 Redis的持久化 Redis提供了2个不同方式的持久化方式 RDB RDB是指在指定的时间间隔将内存中的数据集快照写入磁盘 也就是行话讲的Snapshot快照 它恢复时将快照文件直接读到内存中 备份是如何进行的 Red
  • 算法练习:“回”字形打印矩阵、“之字”形打印矩阵

    转圈输出n n的矩阵 进而输出 M N 的矩阵 12 34 输出为 1243 对于任意一个矩阵 可以找到他的位于正对角线两边界的元素 1234 5678 4329 对于这个矩阵 第一个边界元素是1 第二个边界元素是9 假设 1 的坐标为 r
  • Kibana 配置详解

    Kibana 配置详解 前言 一 Kibana 核心目录结构 二 Kibana 核心配置文件 参考 前言 该博文主要介绍Kibana文件目录结构说明 以及Kibana的配置说明 Kibana的安装使用可以参考我的Kibana分类专栏 本文针
  • android获取当前栈顶的activity

    在Application的onCreate方法中 Override public void onCreate registerActivityLifecycleCallbacks new ActivityLifecycleCallbacks
  • JSP页面出现Invalid location of tag (div)

    意为 不合法的标签标记 原因是我使用标签的方法不对 把table标签删除就可以了
  • C++读取shd二进制文件

    include
  • RocketMQ报No route info of this topic

    最近某天突然收到报警邮件 线上某个应用发送MQ消息报错 完整异常栈如下 2018 04 08 18 17 44 126 DubboServerHandler 10 141 6 116 20968 thread 172 ERROR com x
  • IOS代码实现Hello World

    前面写的iOS笔记一直都是用Xib文件实现的小Demo开发 但是问了好几个现在正从事ios开发的朋友 在实际开发 并不是所有的项目都会用Xib来实现的 因为IOS以前的版本不能正常运行 因为还在学习阶段 也没有在真机上测试 所以没法验证 但
  • Docker-compose部署Hadoop

    Docker部署Hadoop 1 简介 Hadoop简介 Hadoop简介 Apache Hadoop是一个开源的分布式计算平台 可以处理大规模数据集的分布式存储和处理 它是由Apache基金会下的Hadoop项目开发的 采用Java语言编
  • Hadoop 完全分布式运行实战

    Hadoop运行模式包括 本地模式 伪分布式模式以及完全分布式模式 Hadoop官方网站 Apache Hadoop 流程步骤 准备3台客户机 关闭防火墙 静态ip 主机名称 安装JDK 配置环境变量 安装Hadoop 配置环境变量 配置集
  • 入门系列之使用Sysdig监视您的Ubuntu 16.04系统

    欢迎大家前往腾讯云 社区 获取更多腾讯海量技术实践干货哦 本文由乌鸦 发表于云 社区专栏 介绍 Sysdig是一个全面的开源系统活动监控 捕获和分析应用程序 它具有强大的过滤语言和可自定义的输出 以及可以使用称为chisels 的Lua脚本