Krótka odpowiedź: uruchom wyszukiwanie, kliknij Eksportuj w pasku narzędzi zadań pod paskiem wyszukiwania i wybierz Surowe Zdarzenia, CSV or JSON. Dla kilku tysięcy zdarzeń to wszystko, czego potrzebujesz. Dla większych pobrań, pomiń przeglądarkę i użyj CLI wyszukiwania w Splunk albo punktu końcowego eksportu REST. Oba strumieniują wyniki zamiast budować duży plik w Splunk Web.
Dlaczego w ogóle eksportować dane z Splunk, jeśli są już indeksowane? Zwykle dlatego, że ktoś spoza Splunk potrzebuje je zobaczyć: partner IR, kolega z innego zespołu, lub ty, na laptopie, bez pisania SPL przez godzinę. Prime Core ma 23,674 reguły detekcji dla Splunk zmapowane na 676 technik MITRE ATT&CK. To dużo logiki detekcji, którą możesz uruchomić na małym fragmencie swoich danych po ich wyjęciu. Poniżej znajdziesz sposób na wycinkę tych danych, ich oczyszczenie i przejrzenie za darmo w LogTotal.
TL;DR
| Trasa | Użyj tego, kiedy | Czego potrzebujesz |
|---|---|---|
| Splunk Web → Eksport | Jednorazowy, mały eksport, już otwarte wyszukiwanie | Dostęp do wyszukiwania indeksu |
| CLI wyszukiwania w Splunk | Masz dostęp do powłoki na głowicy wyszukiwania Splunk Enterprise | Dostęp do OS + poświadczenia Splunk |
| REST search/jobs/export | Duże eksporty, skrypty lub Splunk Cloud | Dostęp do portu zarządzania (8089) + token |
Zanim zaczniesz
Trzy rzeczy decydują, która trasa działa dla ciebie: gdzie działa twój Splunk, co może wyszukać twoja rola i czy masz pozwolenie na wyjęcie danych.
- Dostęp do indeksu. Możesz eksportować tylko to, co twoja rola może wyszukać. Jeśli wyszukiwanie nic nie zwraca, ale wiesz, że dane tam są, przed przepisywaniem SPL sprawdź dozwolone indeksy twojej roli. Wyraźnie umieść index= w wyszukiwaniu; nie polegaj na domyślnych indeksach.
- Splunk Cloud kontra Enterprise. Na platformie Splunk Cloud nie ma powłoki, więc trasa CLI odpada. REST API też domyślnie nie jest włączone: ktoś musi poprosić o dostęp do twojej instancji, a darmowe wersje próbne nie mogą z niego korzystać w ogóle. Eksport z Splunk Web działa wszędzie.
- Uprawnienia do eksportu. Surowe logi przenoszą nazwy użytkowników, nazwy hostów, wewnętrzne adresy IP, czasami tokeny w URL. LogTotal oczyszcza przesłane pliki przed analizą, ale polityka przetwarzania danych twojej firmy nadal obowiązuje. Najpierw uzyskaj zgodę. Potrzebujesz tylko pięciu minut, a będziesz chciał mieć to na piśmie, jeśli zamieni się to w incydent.
Poniższe polecenia są zgodne z aktualną dokumentacją Splunk dla Splunk Enterprise i Splunk Cloud Platform, sprawdzoną w październiku 2026. Linki do każdej użytej strony znajdują się na końcu.
Krok 1: Określ wyszukiwanie przed eksportem czegokolwiek
Najczęstszy błąd to eksportowanie całego indeksu „na wszelki wypadek.” Kończysz z plikiem, którego nikt nie chce otworzyć. Decyduj, na jakie pytanie odpowiadasz, a potem określ indeks, sourcetype, host i czas:
index=linux sourcetype=linux_secure host=web-03 earliest=-24h@h latest=@h
Dla zdarzeń zabezpieczeń systemu Windows zbieranych przez Splunk Add-on for Windows w trybie XML:
index=wineventlog source="XmlWinEventLog:Security" host=dc-01 earliest=-24h@h latest=@h
Dwa zasady utrzymują eksport przydatnym.
Utrzymuj _raw. Jeśli wyszukiwanie kończy się statystykami, tabelą lub wykresem, eksportujesz podsumowanie, nie logi, a Splunk Web wyblaknie format Surowe Zdarzenia. Eksportuj zdarzenia, nie wyniki. Jeśli zdecydujesz się na JSON, przytnij wyodrębnione pola, aby plik nie potroił swojego rozmiaru:
... | fields _time host source sourcetype _raw
Używaj czasu absolutnego, gdy to ma znaczenie. earliest=-24h znaczy coś innego każdą minutę. Jeśli Splunk musi ponownie uruchomić twoje wyszukiwanie podczas eksportu (więcej na ten temat poniżej), względne okno może zwrócić nieco inny zestaw zdarzeń. Dla wszystkiego związanego z incydentem, używaj dokładnych znaczników czasu.
Jedna rzecz, którą warto wiedzieć o danych Windows: Splunk nie przechowuje oryginalnych plików .evtx. Indeksuje przetworzony tekst wydarzeń, XML lub klasyczny key=value. Więc to, co eksportujesz to ten tekst, nie binarny EVTX.
Krok 2a: Export z Splunk Web
Dobre dla małych, jednorazowych eksportów, gdy wyszukiwanie jest już na twoim ekranie.
- Uruchom wyszukiwanie i pozwól zadaniu zakończyć. Eksportowanie pracy w trakcie tylko daje ci częściowy obraz.
- Kliknij Eksportuj (strzałkę do pobierania) w rzędzie działań zadania pod paskiem wyszukiwania.
- Wybierz format. Surowe Zdarzenia daje ci oryginalne linie logów dokładnie tak, jak były indeksowane, co jest tym, czego chcesz dla źródeł w stylu syslog jak linux_secure. JSON zachowuje hosta, źródło i typ źródła obok każdego zdarzenia. To pomaga, gdy eksport obejmuje kilka hostów.
- Nazwij plik tak, żebyś go rozpoznał za tydzień, na przykład web-03_sshd_2026-10-19.log.
- Pozostaw Liczba wyników puste, aby eksportować wszystko, co wyszukiwanie zwróciło. Jeśli wpiszesz 500, otrzymasz pierwsze 500 i nic cię nie powiadomi, że było ich więcej.
- Kliknij Eksportuj.
Szczegół, który myli ludzi: eksport działa z artefaktu zadania wyszukiwania, a nie z tego, co widzisz w przeglądarce. Jeśli Splunk nie zachował każdego wyniku z zadaniem, dialog ostrzega, że najpierw ponownie uruchomi wyszukiwanie. To normalne. Zajmuje to tylko więcej czasu, co jest powodem, dla którego zakres czasowy z kroku 1 ma znaczenie. Bardzo długie eksporty mogą też napotkać limit czasu sesji Splunk Web. Jeśli eksport trwa minuty, przełącz się na CLI lub REST.
Krok 2b: Export za pomocą CLI Splunk (tylko Enterprise)
Jeśli masz dostęp do powłoki na głowicy wyszukiwania, to jest najszybsza trasa i najłatwiejsza do skryptowania. Najpierw zaloguj się, aby twoje hasło nie trafiło do historii powłoki tak, jakby było z -auth:
$SPLUNK_HOME/bin/splunk login
$SPLUNK_HOME/bin/splunk search
'index=linux sourcetype=linux_secure host=web-03 earliest="10/19/2026:00:00:00" latest="10/20/2026:00:00:00"'
-preview 0 -maxout 0 -output rawdata > web-03_sshd.log
Do czego służy każda flaga:
- -maxout 0 usuwa ograniczenie. Domyślnie CLI eksportuje 100 zdarzeń i zatrzymuje się bez słowa. Jeśli twój plik ma dokładnie 100 linii, to jest tego powód, nie cichy host.
- -preview 0 nie uwzględnia wyników podglądu w pliku.
- -output rawdata zapisuje oryginalne linie. Użyj -output json, jeśli chcesz zdarzenia strukturalne z metadanymi.
Możesz także uruchomić CLI na zdalnej głowicy wyszukiwania za pomocą -uri https://
Dwa szybkie sprawdzenia przed przesłaniem:
wc -l web-03_sshd.log
head -3 web-03_sshd.log
Dla jednoliniowych źródeł jak linux_secure, liczba linii powinna mniej więcej odpowiadać liczbie zdarzeń pokazanych przez Splunk Web dla tego samego wyszukiwania. Pierwsze linie powinny wyglądać jak linie logów, a nie komunikaty o błędach.
Krok 2c: Strumieniuj wyniki przez API REST
To jest trasa dla dużych eksportów, planowanych pobrań i Splunk Cloud (gdy dostęp REST jest włączony dla twojej instancji). Punkt końcowy eksportu strumieniuje wyniki, gdy wyszukiwanie trwa, więc nie ma zadania do odpytywania i nie ma stron z wynikami do przeszukiwania.
Użyj tokenu uwierzytelniającego zamiast nazwy użytkownika i hasła. Stworzysz go w Ustawienia → Tokenyjeśli twój administrator włączył uwierzytelnianie za pomocą tokenu.
export SPLUNK_TOKEN=''
curl -sS
-H "Authorization: Bearer $SPLUNK_TOKEN"
https://sh01.example.com:8089/services/search/v2/jobs/export
--data-urlencode search='search index=linux sourcetype=linux_secure host=web-03'
-d earliest_time='2026-10-19T00:00:00.000+00:00'
-d latest_time='2026-10-20T00:00:00.000+00:00'
-d output_mode=raw
-o web-03_sshd.log
Rzeczy, które wprowadzają ludzi w błąd:
- Ciąg wyszukiwania musi zaczynać się od search (lub komendy generującej jak | tstats). Wklej swoje zapytanie bez tego, a Splunk odrzuci je.
- output_mode=raw daje oryginalne linie i jest najszybszym trybem. output_mode=json strumieniuje jeden obiekt JSON na linię, ze zdarzeniem siedzącym pod kluczem result. Jeśli chcesz tylko zdarzenia, usuń opakowanie za pomocą jq: jq -c 'select(.result) | .result’ export.json > events.ndjson. Do przesłania do LogTotal, pozostań przy raw.
- Środowiska laboratoryjne często używają certyfikatów podpisanych własnoręcznie, a każda odpowiedź na Stack Overflow powie ci, żeby dodać -k. W produkcji, skieruj curl do twojego CA z –cacert.
- Jeśli wykonasz POST do search/v2/jobs i przeczytasz z /results, serwer ogranicza liczbę wierszy na żądanie i musisz sortować z offsetem. Export tego nie robi, co jest powodem, dla którego używamy go tutaj.
Krok 3: Prześlij, oczyść i przejrzyj w LogTotal
LogTotal to darmowa usługa SOC Prime do uruchamiania logiki detekcyjnej na pliku logu bez żadnej konfiguracji. Oczyszcza to, co przesyłasz i nie zachowuje twoich plików.
- Prześlij. Otwórz logtotal.com i umieść plik z kroku 2.
- Oczyść. Przejrzyj go przed kontynuacją. Znasz swoje środowisko lepiej niż jakiekolwiek reguły maskowania.
- Przejrzyj.
Kiedy eksport idzie źle
| Objaw | Prawdopodobna przyczyna | Fix |
|---|---|---|
| Plik z CLI ma dokładnie 100 zdarzeń | Domyślny -maxout to 100 | Dodaj -maxout 0 |
| Surowe Zdarzenia są wyszarzone w dialogu eksportu | Wyszukiwanie kończy się komendą transformującą (stats, table, chart) | Eksportuj zdarzenia zamiast, lub wybierz JSON |
| Wyszukiwanie nic nie zwraca, ale dane są tam | Indeks nie jest dozwolony w twojej roli lub domyślnych indeksach, lub zły zakres czasowy | Dodaj index= jawnie; zapytaj administratora o rolę |
| Dialog mówi, że wyszukiwanie będzie ponownie uruchomione | Artefakt zadania nie zachował każdego wyniku | Oczekiwane zachowanie; użyj absolutnego zakresu czasowego, aby ponowne uruchomienie zwracało te same zdarzenia |
| Eksport przeglądarki zatrzymuje się lub plik jest przycięty | Limit czasu sesji Splunk Web podczas długiego eksportu | Przełącz się na CLI lub REST |
| 401 Nieautoryzowany z curl | Token wygasł, wyłączony lub uwierzytelnianie za pomocą tokenu jest wyłączone | Utwórz nowe token w Ustawienia → Tokeny |
| curl zawiesza się lub odmawia połączenia na 8089 | Port zarządzania zablokowany, lub REST nie jest włączony na Splunk Cloud | Sprawdź reguły zapory; poproś o dostęp REST dla swojej instancji w chmurze |
| REST zwraca błąd składni zapytania | Zapytanie nie zaczyna się od search | Poprzedz je komendą search |
| Plik JSON jest o wiele większy niż oczekiwano | Wyeksportowano każde wydobyte pole | Dodaj | fields _time host source sourcetype _raw |
FAQ
Czy mogę eksportować logi ze Splunk Cloud?
Tak. Eksport z Splunk Web działa tak samo jak na Enterprise. Punkt końcowy eksportu REST działa, gdy dostęp API jest włączony dla twojej instancji; darmowe wersje próbne go nie mają. CLI nie jest opcją, ponieważ na Splunk Cloud nie ma powłoki.
Czy mogę odzyskać oryginalne pliki EVTX ze Splunk?
Nie. Splunk przechowuje przetworzony tekst wydarzeń, nie binarne pliki .evtx. Możesz eksportować ten tekst jako surowe zdarzenia lub JSON. Dla prawdziwych plików EVTX, eksportuj je bezpośrednio z hosta Windows.
Surowe Zdarzenia czy JSON: który wybrać dla LogTotal?
Surowe. Otrzymujesz te same linie, które znajdują się na hoście, a LogTotal odczytuje pliki formatu syslog takie, jakie są. JSON obejmuje każde zdarzenie w strukturze Splunk. Jest przydatny, gdy potrzebujesz hosta i sourcetype obok każdego zdarzenia, ale do przesłania do LogTotal, surowe jest bezpieczniejszym wyborem.
Czy przesłanie eksportu Splunk do narzędzia online jest bezpieczne?
LogTotal oczyszcza przesłane pliki przed analizą i nie zachowuje plików.
Ile zdarzeń mogę eksportować?
Po stronie Splunk, ile chcesz: pozostaw Liczba wyników puste w Splunk Web, lub ustaw -maxout 0 w CLI. W praktyce, limit to rozmiar przesyłki na drugim końcu. Dlatego ważne jest, aby prawidłowo określić zakres wyszukiwania w kroku 1.