Difference between revisions of "Sysdig"

[quality revision] [pending revision]
m (Replaced content with "<noinclude> {{ArticleBasedOnModel|Trace and debug tools article model}} {{ArticleApprovedVersion | Jean-ChristopheT | Nobody | No previous approved version | Automatic...")
(Tag: Replaced)
 


1 Article purpose[edit]

This article provides basic information to start using the Linux tool: sysdig[1].

2 Introduction[edit]

The following table provides a brief description of the tool, as well as its availability depending on the software packages:

Yes: this tool is either present (ready to use or to be activated), or can be integrated and activated on the software package.

No: this tool is not present and cannot be integrated, or it is present but cannot be activated on the software package.

Tool STM32MPU Embedded Software distribution STM32MPU Embedded Software distribution for Android™
Name Category Purpose Starter Package Developer Package Distribution Package Starter Package Developer Package Distribution Package
sysdig Monitoring tools sysdig[1] is a tool for system troubleshooting, analysis and exploration. It can be used to capture, filter and decode system calls and other OS events. No No Yes No No No

sysdig can be both used to inspect live systems or to generate trace files that can be analyzed at a later stage.

It includes a powerul filtering language, has customizable output, and can be extended through Lua scripts, called chisels.

sysdig aims to replace a collection of tools, as lsof, strace, iostat, ps, etc...

3 Installing the trace and debug tool on your target board[edit]

sysdig is a user space application which is not part of the standard STM32MPU Embedded Software distribution image and Packages. It has to be integrated as an external component.

Linux kernel configuration must also enable CONFIG_TRACEPOINTS and CONFIG_HAVE_SYSCALL_TRACEPOINTS:

Symbol: TRACEPOINTS [=y]
Selected by: TRACING [=y] || BLK_DEV_IO_TRACE [=n] && TRACING_SUPPORT [=y] && FTRACE [=y] && SYSFS [=y] && BLOCK [=y]

Symbol: HAVE_SYSCALL_TRACEPOINTS [=y]
Selected by: ARM [=y]

3.1 Using STM32MPU Embedded Software distribution[edit]

On STM32MPU Embedded Software distribution(weston), Linux kernel configuration already enable the required configuration options.

3.1.1 Developer Package[edit]

There are too many dependencies for building sysdig application and kernel driver, that's the reason why this is recommended to use the Distribution package to integrate this tool.

3.1.2 Distribution Package[edit]

Yocto recipes for building sysdig are part of the OpenSTLinux distribution.

Following steps to be done to enable sysdig and add it to the st-image-weston image:

  • Add sysdig package install for the image
PC $> echo 'IMAGE_INSTALL_append += "sysdig"' >> layers/meta-st/meta-st-openstlinux/recipes-st/images/st-image-weston.bbappend
PC $> echo 'IMAGE_INSTALL_append += "sysdig-driver"' >> layers/meta-st/meta-st-openstlinux/recipes-st/images/st-image-weston.bbappend

  • Regenerate the image file:
PC $> bitbake st-image-weston

4 Getting started[edit]

Below some basics commands extracted from official sysdig website[1]: Sysdig exemples.png

5 To go further[edit]

Under construction.png Coming soon

6 References[edit]

"External links"
Document link Document Type Description
sysdig manpage Standard Man page from Official github
sysdig wiki documentation User Guide Documentation from Official github


<noinclude>

{{ArticleBasedOnModel|[[Trace and debug tools article model]]}}
{{ArticleApprovedVersion | Jean-ChristopheT | Nobody | No previous approved version | Automatic approval (article under construction) | 19Feb’19}}
[[Category:Linux monitoring tools]]</noinclude>

{{UnderConstruction}}

{{ReviewsComments| JPR 20Dec'18: Latest action:<br/>

- Not possible with SDK, need to run with distribution.<br/>

- With distrib, need to get latest version of sysdig because of kernel driver compatibility with 4.14/4.19<br/>

- Need to have one recipe for sysdig application, and one for sysdig driver<br/>

- Need to create a new recipe for libb64<br/>

- All in /local/opt/st/stm32mp1/2.4-snapshot-openstlinux-4.14-rocko-mp1-18-11-02/<br/>

- 2 gerrits pushed to integrate the recipes, then user have only to add sysdig and sysdig-driver in the weston image: https://gerrit.st.com/#/c/119920/ and https://gerrit.st.com/#/c/119921/
}}

== Article purpose ==
This article provides basic information to start using the Linux tool: '''sysdig'''<ref name=sysdigdotorg/>.

== Introduction ==
{{:Trace_and_debug_tools_assignment_table_template}}<onlyinclude>

 | [[Sysdig|sysdig]]
 | [[:Category:Monitoring tools|Monitoring tools]]
 | style="text-align:left;" | '''sysdig'''<ref name=sysdigdotorg>https://sysdig.com</ref> is a tool for system troubleshooting, analysis and exploration. It can be used to capture, filter and decode system calls and other OS events.
 | {{N}} || {{N}} || {{Y}}
 | {{N}} || {{N}} || {{N}}
 |-</onlyinclude>

 |}

'''sysdig''' can be both used to inspect live systems or to generate trace files that can be analyzed at a later stage.

It includes a powerul filtering language, has customizable output, and can be extended through [http://www.lua.org/ Lua] scripts, called chisels.

'''sysdig''' aims to replace a collection of tools, as lsof, strace, iostat, ps, etc...

== Installing the trace and debug tool on your target board ==
'''sysdig''' is a user space application {{highlight|which is not part of the standard STM32MPU Embedded Software distribution image and Packages}}. It has to be integrated as an external component.

Linux kernel configuration must also enable '''CONFIG_TRACEPOINTS''' and '''CONFIG_HAVE_SYSCALL_TRACEPOINTS''':
 Symbol: '''TRACEPOINTS''' [{{green|&#61;y}}]
 Selected by: {{highlight|TRACING [&#61;y] &#124;&#124; BLK_DEV_IO_TRACE [&#61;n] && TRACING_SUPPORT [&#61;y] && FTRACE [&#61;y] && SYSFS [&#61;y] && BLOCK [&#61;y]}}

 Symbol: '''HAVE_SYSCALL_TRACEPOINTS''' [{{green|&#61;y}}]
 Selected by: {{highlight|ARM [&#61;y]}}

=== Using STM32MPU Embedded Software distribution ===
On STM32MPU Embedded Software distribution(weston), Linux kernel configuration already enable the required configuration options.

==== Developer Package ====
There are too many dependencies for building sysdig application and kernel driver, that's the reason why this is recommended to use the Distribution package to integrate this tool.

==== Distribution Package ====
{{UpdateNeededForNewRelease|Below InteralInfo banner to be removed when integrated after MMDV}}
{{InternalInfo|<br/>

This is NOT present on MMDV}}
Yocto recipes for building sysdig are part of the OpenSTLinux distribution.

Following steps to be done to enable sysdig and add it to the st-image-weston image:
* Add sysdig package install for the image
 {{PC$}} echo 'IMAGE_INSTALL_append += "sysdig"' >> layers/meta-st/meta-st-openstlinux/recipes-st/images/st-image-weston.bbappend
 {{PC$}} echo 'IMAGE_INSTALL_append += "sysdig-driver"' >> layers/meta-st/meta-st-openstlinux/recipes-st/images/st-image-weston.bbappend

* Regenerate the image file:
 {{PC$}} bitbake st-image-weston

* Update your board with the new image. See [[STM32MP1 Distribution Package#Flashing the built image|Flashing the built image]].

==Getting started==
Below some basics commands extracted from official sysdig website<ref name=sysdigdotorg/>:
[[File:sysdig_exemples.png|link=]]

==To go further==
{{UnderConstruction}}

== References ==<references />


{|
|+ "External links"
|-
! scope=col | Document link
! scope=col | Document Type
! scope=col | Description
|-
| [https://github.com/draios/sysdig/blob/master/userspace/sysdig/man/sysdig.md sysdig manpage]
| Standard
| Man page from Official github
|-
| [https://github.com/draios/sysdig/wiki sysdig wiki documentation]
| User Guide
| Documentation from Official github
|}

{{ ArticleBasedOnModel | Trace and debug tools article model }}

[[Category:Linux monitoring tools]]
(3 intermediate revisions by 2 users not shown)
Line 1: Line 1:
<noinclude>
+
 
{{ArticleBasedOnModel|[[Trace and debug tools article model]]}}
+
{{ReviewsComments| JPR 20Dec'18: Latest action:<br/>
{{ArticleApprovedVersion | Jean-ChristopheT | Nobody | No previous approved version | Automatic approval (article under construction) | 19Feb’19}}
+
- Not possible with SDK, need to run with distribution.<br/>
  +
- With distrib, need to get latest version of sysdig because of kernel driver compatibility with 4.14/4.19<br/>
  +
- Need to have one recipe for sysdig application, and one for sysdig driver<br/>
  +
- Need to create a new recipe for libb64<br/>
  +
- All in /local/opt/st/stm32mp1/2.4-snapshot-openstlinux-4.14-rocko-mp1-18-11-02/<br/>
  +
- 2 gerrits pushed to integrate the recipes, then user have only to add sysdig and sysdig-driver in the weston image: https://gerrit.st.com/#/c/119920/ and https://gerrit.st.com/#/c/119921/
  +
}}
  +
 
  +
== Article purpose ==
  +
This article provides basic information to start using the Linux tool: '''sysdig'''<ref name=sysdigdotorg/>.
  +
 
  +
== Introduction ==
  +
{{:Trace_and_debug_tools_assignment_table_template}}
  +
<onlyinclude>
  +
| [[Sysdig|sysdig]]
  +
| [[:Category:Monitoring tools|Monitoring tools]]
  +
| style="text-align:left;" | '''sysdig'''<ref name=sysdigdotorg>https://sysdig.com</ref> is a tool for system troubleshooting, analysis and exploration. It can be used to capture, filter and decode system calls and other OS events.
  +
| {{N}} || {{N}} || {{Y}}
  +
| {{N}} || {{N}} || {{N}}
  +
|-
  +
</onlyinclude>
  +
|}
  +
 
  +
'''sysdig''' can be both used to inspect live systems or to generate trace files that can be analyzed at a later stage.
  +
 
  +
It includes a powerul filtering language, has customizable output, and can be extended through [http://www.lua.org/ Lua] scripts, called chisels.
  +
 
  +
'''sysdig''' aims to replace a collection of tools, as lsof, strace, iostat, ps, etc...
  +
 
  +
== Installing the trace and debug tool on your target board ==
  +
'''sysdig''' is a user space application {{highlight|which is not part of the standard STM32MPU Embedded Software distribution image and Packages}}. It has to be integrated as an external component.
  +
 
  +
Linux kernel configuration must also enable '''CONFIG_TRACEPOINTS''' and '''CONFIG_HAVE_SYSCALL_TRACEPOINTS''':
  +
Symbol: '''TRACEPOINTS''' [{{green|&#61;y}}]
  +
Selected by: {{highlight|TRACING [&#61;y] &#124;&#124; BLK_DEV_IO_TRACE [&#61;n] && TRACING_SUPPORT [&#61;y] && FTRACE [&#61;y] && SYSFS [&#61;y] && BLOCK [&#61;y]}}
  +
  +
Symbol: '''HAVE_SYSCALL_TRACEPOINTS''' [{{green|&#61;y}}]
  +
Selected by: {{highlight|ARM [&#61;y]}}
  +
 
  +
=== Using STM32MPU Embedded Software distribution ===
  +
On STM32MPU Embedded Software distribution(weston), Linux kernel configuration already enable the required configuration options.
  +
 
  +
==== Developer Package ====
  +
There are too many dependencies for building sysdig application and kernel driver, that's the reason why this is recommended to use the Distribution package to integrate this tool.
  +
 
  +
==== Distribution Package ====
  +
{{UpdateNeededForNewRelease|Below InteralInfo banner to be removed when integrated after MMDV}}
  +
{{InternalInfo|<br/>
  +
This is NOT present on MMDV}}
  +
Yocto recipes for building sysdig are part of the OpenSTLinux distribution.
  +
 
  +
Following steps to be done to enable sysdig and add it to the st-image-weston image:
  +
* Add sysdig package install for the image
  +
{{PC$}} echo 'IMAGE_INSTALL_append += "sysdig"' >> layers/meta-st/meta-st-openstlinux/recipes-st/images/st-image-weston.bbappend
  +
{{PC$}} echo 'IMAGE_INSTALL_append += "sysdig-driver"' >> layers/meta-st/meta-st-openstlinux/recipes-st/images/st-image-weston.bbappend
  +
 
  +
* Regenerate the image file:
  +
{{PC$}} bitbake st-image-weston
  +
 
  +
* Update your board with the new image. See [[STM32MP1 Distribution Package#Flashing the built image|Flashing the built image]].
  +
 
  +
==Getting started==
  +
Below some basics commands extracted from official sysdig website<ref name=sysdigdotorg/>:
  +
[[File:sysdig_exemples.png|link=]]
  +
 
  +
==To go further==
  +
{{UnderConstruction}}
  +
 
  +
== References ==
  +
<references />
  +
 
  +
{|
  +
|+ "External links"
  +
|-
  +
! scope=col | Document link
  +
! scope=col | Document Type
  +
! scope=col | Description
  +
|-
  +
| [https://github.com/draios/sysdig/blob/master/userspace/sysdig/man/sysdig.md sysdig manpage]
  +
| Standard
  +
| Man page from Official github
  +
|-
  +
| [https://github.com/draios/sysdig/wiki sysdig wiki documentation]
  +
| User Guide
  +
| Documentation from Official github
  +
|}
  +
 
  +
{{ ArticleBasedOnModel | Trace and debug tools article model }}
  +
 
 
[[Category:Linux monitoring tools]]
 
[[Category:Linux monitoring tools]]
</noinclude>
 
{{UnderConstruction}}
 

Attachments

Discussions