{"id":75019,"date":"2026-03-19T13:13:11","date_gmt":"2026-03-19T21:13:11","guid":{"rendered":"https:\/\/www.sumologic.com\/blog\/claude-code-fuehrt-bash-befehle-auf-ihrer-infrastruktur-aus-so-behalten-sie-es-im-blick"},"modified":"2026-06-24T08:32:03","modified_gmt":"2026-06-24T16:32:03","slug":"claude-code-bash-monitoring","status":"publish","type":"blog","link":"https:\/\/www.sumologic.com\/de\/blog\/claude-code-bash-monitoring","title":{"rendered":"Claude Code f\u00fchrt Bash-Befehle auf Ihrer Infrastruktur aus. So behalten Sie es im Blick."},"content":{"rendered":"\n<section class=\"e-stn e-stn-0d652506f82b000a392973813b918ee25d5b4211 e-stn--glossary-inner-content e-stn--table-of-content\"><div class=\"container\">\n<div class=\"wp-block-b3rg-row e-row row\">\n<div class=\"wp-block-b3rg-column e-col e-col-1f7b3997080fc292474d26ff00c905d99d3520fa e-col--content-wrapper  col-sm-12 col-lg-12 col-xl-12\">\n<div class=\"e-div e-div-a1b32f66e1749758df41d5aea14f647cd10e362c e-div--card-btn-link\">\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"900\" height=\"200\" src=\"https:\/\/www.sumologic.com\/wp-content\/uploads\/3-1.png\" alt=\"\" class=\"wp-image-71050\" title=\"\" srcset=\"https:\/\/www.sumologic.com\/wp-content\/uploads\/3-1.png 900w, https:\/\/www.sumologic.com\/wp-content\/uploads\/3-1-300x67.png 300w, https:\/\/www.sumologic.com\/wp-content\/uploads\/3-1-768x171.png 768w, https:\/\/www.sumologic.com\/wp-content\/uploads\/3-1-575x128.png 575w\" sizes=\"auto, (max-width: 900px) 100vw, 900px\" \/><\/figure>\n\n\n\n<p><\/p>\n\n\n\n<p>Ich beobachte <a href=\"https:\/\/code.claude.com\/docs\/en\/monitoring-usage\" target=\"_blank\" rel=\"noopener\">Claude Code-Telemetrie<\/a> seit einigen Wochen und mir f\u00e4llt immer wieder dasselbe auf: Die meisten Teams integrieren es in ihre Umgebung, sagen \u201ees ist gro\u00dfartig\u201c und haben absolut keine Ahnung, was es auf Systemebene tats\u00e4chlich tut.<\/p>\n\n\n\n<p>F\u00fcr ein pers\u00f6nliches Entwicklungstool ist das in Ordnung. Das ist nicht in Ordnung, wenn Sie es bereits f\u00fcr 50 Engineers ausgerollt haben.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"what-claude-code-actually-emits\"><strong>Was Claude Code tats\u00e4chlich ausgibt<\/strong><\/h2>\n\n\n\n<p>Claude Code wird mit nativer <a href=\"https:\/\/www.sumologic.com\/glossary\/opentelemetry\">OpenTelemetry<\/a>-Unterst\u00fctzung ausgeliefert. Zwei Umgebungsvariablen, und sie exportieren:<\/p>\n\n\n\n<code>export CLAUDE_CODE_ENABLE_TELEMETRY=1<br\/>export OTEL_METRICS_EXPORTER=otlp<br\/>export OTEL_LOGS_EXPORTER=otlp<br\/>export OTEL_EXPORTER_OTLP_PROTOCOL=http\/protobuf<br\/>export OTEL_EXPORTER_OTLP_ENDPOINT=https:\/\/collectors.sumologic.com\/receiver\/v1\/otlp\/&lt;unique-id&gt;<br\/>export OTEL_EXPORTER_OTLP_HEADERS=\"Authorization=x-sumo-token your-token\"<br\/><\/code>\n\n\n\n<p><\/p>\n\n\n\n<p>Die Endpunkt-URL erhalten Sie, indem Sie unter \u201eDaten verwalten\u201c, dann \u201eErfassung\u201c und anschlie\u00dfend \u201eHosted Collectors\u201c in Sumo Logic eine OTLP\/HTTP-Quelle erstellen. Sobald die Quelle erstellt ist, erhalten Sie eine eindeutige Ingest-URL. Setzen Sie Ihre Umgebungsvariablen auf diese URL, und fertig. Kein Collector erforderlich. Kein SDK. Kein Wrapper. Was dann ins Rollen kommt: Metriken alle 60 Sekunden, Ereignisse alle f\u00fcnf.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"the-metrics-are-the-boring-part-but-you-still-want-them\"><strong>Die Metriken sind der langweilige Teil (aber Sie wollen sie trotzdem haben)<\/strong><\/h2>\n\n\n\n<p>Tokenverwendung nach Benutzer, nach Modell, nach Typ (Eingabe\/Ausgabe\/Cache). Kosten pro Sitzung in USD. Gestartete Sitzungen. Hinzugef\u00fcgte und entfernte Codezeilen. Commits erstellt. Pull Requests erstellt. Zeitaufwand f\u00fcr aktive Interaktion vs. Zeit, in der Claude verarbeitet.<\/p>\n\n\n\n<p>Dies ist Ihr ROI-Dashboard. Es beantwortet die Frage, die Ihr VP Engineering in drei Monaten stellen wird: \u201eWir bezahlen daf\u00fcr. Wird es tats\u00e4chlich von irgendjemandem benutzt?\u201c<\/p>\n\n\n\n<p>Segmentieren Sie nach <code>user.account_uuid<\/code> und <code>organization.id<\/code>. Erstellen Sie ein Sumo Logic-Dashboard. Weiter.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"the-events-are-the-interesting-part\"><strong>Die Ereignisse sind der interessante Teil<\/strong><\/h2>\n\n\n\n<p>Darauf sollten Sie achten.<\/p>\n\n\n\n<p>Jedes Mal, wenn Claude ein Tool ausf\u00fchrt, erhalten Sie ein <code>claude_code.tool_result<\/code>-Ereignis. Dieses Ereignis enth\u00e4lt den Namen des Tools, die Ausf\u00fchrungszeit, Erfolg oder Fehlschlag und f\u00fcr Bash: den vollst\u00e4ndigen <code>bash_command<\/code>, der ausgef\u00fchrt wurde.<\/p>\n\n\n\n<p>Jeder betroffene Dateipfad. Jeder Git-Befehl. Jedes aufgerufene Skript. Protokolliert, strukturiert, durchsuchbar.<\/p>\n\n\n\n<p>Jedes Mal, wenn ein Benutzer eine Eingabeaufforderung absendet, erhalten Sie ein <code>claude_code.user_prompt<\/code>-Ereignis \u2013 standardm\u00e4\u00dfig die L\u00e4nge der Eingabeaufforderung, den vollst\u00e4ndigen Inhalt, wenn Sie <code>OTEL_LOG_USER_PROMPTS=1<\/code> aktivieren. Jeder API-Aufruf erh\u00e4lt ein eigenes <code>claude_code.api_request<\/code>-Ereignis mit Modell, Kosten, Latenz und Tokenanzahl.<\/p>\n\n\n\n<p>Das, was das alles zusammenh\u00e4lt: <code>prompt.id<\/code>. Jedem Ereignis wird eine UUID zugeordnet, die auf die urspr\u00fcngliche Eingabeaufforderung verweist, die das Ereignis ausgel\u00f6st hat. Mit einem einzigen Filter in der Sumo Logic Log Search l\u00e4sst sich die gesamte Ausf\u00fchrungskette rekonstruieren: die Benutzeranfrage, die API-Aufrufe, die ausgef\u00fchrten Tools \u2013 alles in chronologischer Reihenfolge.<\/p>\n\n\n\n<p><strong>Das ist mehr als nur ein Protokoll, das ist ein Pr\u00fcfpfad.<\/strong><\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"the-field-nobody-s-looking-at\"><strong>Das Feld, das niemand beachtet<\/strong><\/h2>\n\n\n\n<p><code>decision_source<\/code>.<\/p>\n\n\n\n<p>Bei jeder Tool-Ausf\u00fchrung wird protokolliert, wie die Berechtigungsentscheidung getroffen wurde: <code>config<\/code>, <code>hook<\/code>, <code>user_permanent<\/code>, <code>user_temporary<\/code>, <code>user_abort<\/code>, <code>user_reject<\/code>.<\/p>\n\n\n\n<p><code>user_permanent<\/code> bedeutet, dass der Benutzer auf \u201eImmer zulassen\u201c geklickt hat. Einmal. F\u00fcr dieses Tool. F\u00fcr immer.<\/p>\n\n\n\n<p>Ziehen Sie dieses Feld in Sumo Logic heran und betrachten Sie die Verteilung. Wenn die meisten Ihrer Tool-Entscheidungen <code>user_permanent<\/code> sind, haben Ihre Entwickler Claude im Grunde vorab autorisiert, mit allen Tools, die es verwendet, zu tun, was es will. Sie haben das einmal vor Monaten getan und es dann vergessen. Das ist keine Sicherheitskrise. Aber es ist etwas, das Sie wissen sollten, und im Moment wissen Sie es wahrscheinlich nicht.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"what-to-actually-build-in-sumo-logic\"><strong>Was Sie in Sumo Logic tats\u00e4chlich aufbauen sollten<\/strong><\/h2>\n\n\n\n<p>Hier sind drei Dashboards, die es wert sind, in Sumo Logic eingerichtet zu werden:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Nutzung und Kosten: <\/strong>Tokenverbrauch pro Benutzer und Modell im Zeitverlauf. Kosten pro Sitzung. Aktive Zeit vs. Leerlaufzeit. Das ist das, wonach Ihr Finanzteam fr\u00fcher oder sp\u00e4ter fragen wird.<\/li>\n\n\n\n<li><strong>Tool-Ausf\u00fchrung: <\/strong>Welche Tools werden ausgef\u00fchrt, wie oft, Erfolgsquote und durchschnittliche Dauer. Filtern Sie nach dem Bash-Tool und sehen Sie sich die Befehlsmuster an. Sie werden erfahren, wie Ihre Entwickler das Tool tats\u00e4chlich nutzen \u2013 im Vergleich dazu, wie Sie dachten, dass sie es nutzen.<\/li>\n\n\n\n<li><strong>Sitzungsrekonstruktion: <\/strong>Eine gespeicherte Suche, gefiltert nach <code>prompt.id<\/code> mit Feldern f\u00fcr <code>event.name<\/code>, <code>event.timestamp<\/code>, <code>tool_name<\/code>,<code> bash_command<\/code>, <code>cost_usd<\/code>. Falls etwas schiefgeht und eine falsche Datei gel\u00f6scht wird, ein unerwarteter API-Aufruf erfolgt oder ein mysteri\u00f6ser Commit durchgef\u00fchrt wird, finden Sie so heraus, was passiert ist.<\/li>\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"one-thing-to-get-right-before-you-go-wide\"><strong>Eine Sache, die Sie kl\u00e4ren sollten, bevor Sie breit ausrollen<\/strong><\/h2>\n\n\n\n<p>Das <code>tool_parameters<\/code>-Feld kann Geheimnisse enthalten. Wenn Entwickler Bash-Befehle ausf\u00fchren, die Tokens, Passw\u00f6rter oder API-Schl\u00fcssel direkt im Befehl enthalten, landen diese Werte in Ihren Protokollen.<\/p>\n\n\n\n<p>Konfigurieren Sie eine Sumo Logic-Feldextraktionsregel, um <code>tool_parameters<\/code> vor der Erfassung zu maskieren oder zu verwerfen, falls dies f\u00fcr Ihre Umgebung ein Problem darstellt. Warten Sie nicht, bis Sie es an 50 Personen verschickt haben.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"final-thoughts\"><strong>Abschlie\u00dfende Gedanken<\/strong><\/h2>\n\n\n\n<p>Claude Code ist n\u00fctzlich. Das ist unbestritten. N\u00fctzlich und beobachtbar sind aber nicht dasselbe. Und in einer Entwicklungsorganisation f\u00fchren unbeobachtbare Tools h\u00e4ufig dazu, dass \u00dcberraschungen genau dann auftreten, wenn es am ung\u00fcnstigsten ist.<\/p>\n\n\n\n<p><strong>Integrieren Sie es. Sie werden es wahrscheinlich nicht bereuen, es zu wissen.<\/strong><\/p>\n\n\n\n<p><a href=\"https:\/\/www.sumologic.com\/sign-up\/\">\u00dcberzeugen Sie sich selbst mit unserer 30-t\u00e4gigen Gratis-Testversion.<\/a><\/p>\n<\/div>\n<\/div>\n<\/div>\n<\/div><\/section>\n","protected":false},"excerpt":{"rendered":"","protected":false},"author":331,"featured_media":71047,"template":"","meta":{"_acf_changed":false,"show_custom_date":false,"custom_date":"","featured":false,"featured_image":0,"learn_more_label":"","image_alt_text":"","learn_more_type":"","show_popup":false,"learn_more_link_file":0,"event_date":false,"event_start_date":"","event_end_date":"","place_holder_image_url":"","post_reading_time":"3","notification_enabled":false,"notification_text":"","notification_logo":"","notification_expiration_time":0,"is_enable_transparent_header":false,"selected_taxonomy_terms":{"blog-category":[355,405],"blog-tag":[],"translation_priority":[221]},"selected_primary_terms":[],"learn_more_link":[],"featured_page_list":[],"notification_enabled_post_list":[],"_gspb_post_css":"","_relevanssi_hide_post":"","_relevanssi_hide_content":"","_relevanssi_pin_for_all":"","_relevanssi_pin_keywords":"","_relevanssi_unpin_keywords":"","_relevanssi_related_keywords":"","_relevanssi_related_include_ids":"","_relevanssi_related_exclude_ids":"","_relevanssi_related_no_append":"","_relevanssi_related_not_related":"","_relevanssi_related_posts":"74958,74992,75007","_relevanssi_noindex_reason":"","inline_featured_image":false,"footnotes":""},"blog-category":[355,405],"blog-tag":[],"class_list":["post-75019","blog","type-blog","status-publish","has-post-thumbnail","hentry","blog-category-ai","blog-category-opentelemetry"],"acf":[],"_links":{"self":[{"href":"https:\/\/www.sumologic.com\/de\/wp-json\/wp\/v2\/blog\/75019","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.sumologic.com\/de\/wp-json\/wp\/v2\/blog"}],"about":[{"href":"https:\/\/www.sumologic.com\/de\/wp-json\/wp\/v2\/types\/blog"}],"author":[{"embeddable":true,"href":"https:\/\/www.sumologic.com\/de\/wp-json\/wp\/v2\/users\/331"}],"version-history":[{"count":2,"href":"https:\/\/www.sumologic.com\/de\/wp-json\/wp\/v2\/blog\/75019\/revisions"}],"predecessor-version":[{"id":75080,"href":"https:\/\/www.sumologic.com\/de\/wp-json\/wp\/v2\/blog\/75019\/revisions\/75080"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.sumologic.com\/de\/wp-json\/wp\/v2\/media\/71047"}],"wp:attachment":[{"href":"https:\/\/www.sumologic.com\/de\/wp-json\/wp\/v2\/media?parent=75019"}],"wp:term":[{"taxonomy":"blog-category","embeddable":true,"href":"https:\/\/www.sumologic.com\/de\/wp-json\/wp\/v2\/blog-category?post=75019"},{"taxonomy":"blog-tag","embeddable":true,"href":"https:\/\/www.sumologic.com\/de\/wp-json\/wp\/v2\/blog-tag?post=75019"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}