Envoyez une PowerQuery à l’API Singularity Data Lake à /api/powerQuery sur l’URL de votre Data Lake régional, par exemple https://xdr.us1.sentinelone.net. La réponse revient sous forme de tableau (colonnes plus lignes), et une ligne jq la transforme en un objet JSON par événement. Alternativement, exportez directement les événements depuis la console Singularity via Event Search. Le CSV est un format d’exportation couramment disponible, tandis que les téléchargements JSON ou texte brut peuvent être disponibles selon l’interface.
Le Singularity Data Lake contient la télémétrie des endpoints de SentinelOne ainsi que tous les journaux tiers que vous lui envoyez, offrant souvent la vue la plus large qu’un client SentinelOne puisse avoir. Prime Core a 14 699 règles de détection pour SentinelOne, mappées sur 644 techniques MITRE ATT&CK. Voici comment extraire les données, les nettoyer et les analyser gratuitement dans LogTotal.
Avant de commencer
Un utilisateur de service avec les bonnes autorisations. Créez un utilisateur de service pour l’accès à l’API et donnez à son rôle les autorisations de requête Data Lake (SDL Query API et SDL Search). Créez-le au niveau du compte ou du site qui détient réellement les données. Une clé créée au mauvais niveau s’authentifie bien mais ne renvoie rien.
Votre URL régionale. Les États-Unis utilisent généralement https://xdr.us1.sentinelone.net ; d’autres régions utilisent leurs propres noms d’hôte. La section d’aide de la console répertorie la vôtre.
Connaissez les champs. La télémétrie des endpoints utilise des noms tels que endpoint.name, event.type, src.process.cmdline et tgt.process.cmdline. Les journaux tiers conservent leur texte original dans un champ message. Essayez d’abord la requête dans Event Search.
Exportez avec l’API PowerQuery
SDL="https://xdr.us1.sentinelone.net"
curl -sS -X POST "$SDL/api/powerQuery"
-H "Authorization: Bearer $S1_SDL_TOKEN" -H "Content-Type: application/json"
-d '{
"query": "endpoint.name = "WS-042" | columns timestamp, endpoint.name, event.type, src.process.cmdline, tgt.process.cmdline",
"startTime": "2026-10-19T00:00:00Z",
"endTime": "2026-10-20T00:00:00Z"
}' > sdl_ws042_1019.json
# tableau -> un objet JSON par ligne
jq -c '.columns as $c | .values[] | [$c, .] | transpose | map({(.[0].name): .[1]}) | add'
sdl_ws042_1019.json > sdl_ws042_1019.jsonl
Les résultats PowerQuery sont plafonnés, donc divisez les longues fenêtres en plusieurs requêtes.
L’étape des colonnes décide de ce que vous obtenez. Laissez de côté les champs dont vous n’avez pas besoin, mais conservez les lignes de commandes et les noms de processus : c’est là que la plupart des détections se font.
Exportez les journaux via l’interface Singularity Data Lake
Pour des recherches rapides ou des échantillons de journaux plus petits, vous pouvez exporter directement les événements depuis la console SentinelOne Singularity sans utiliser l’API.
- Ouvrez Event Search. Connectez-vous à la console SentinelOne Singularity et allez à Event Search. Sélectionnez le compte ou le site contenant vos journaux.
- Définissez la plage de temps. Choisissez la période que vous souhaitez analyser et assurez-vous que les sources de données correctes sont incluses.
- Exécutez une requête. Activez PowerQuery et saisissez un filtre de recherche, par exemple endpoint.name = « WS-042 ». Exécutez la recherche.
- Passez en revue les résultats. Vérifiez les événements correspondant et sélectionnez les champs dont vous avez besoin, tels que timestamp, endpoint.name, event.type, src.process.cmdline et tgt.process.cmdline. Évitez les fonctions d’agrégation si vous avez besoin des événements de journal individuels.
- Exportez les résultats. Utilisez l’option Exporter or Télécharger dans la zone des résultats. Selon la version de la console et le mode de recherche, vous pouvez choisir entre CSV, JSON et texte brut.
- Enregistrez le fichier. Téléchargez les résultats sur votre ordinateur. Préférez JSON lorsque disponible, surtout pour la télémétrie des endpoints structurée. Pour les journaux tiers, conservez le champ message contenant le texte original du journal.
Limitations. Les formats d’exportation et les limites de résultats varient selon la version de la console et le mode de recherche. Les recherches volumineuses peuvent également dépasser la limite d’exportation de l’interface graphique ; réduisez la plage temporelle ou utilisez l’API Data Lake pour des ensembles de données plus importants.
Téléchargez, nettoyez et passez en revue dans LogTotal
- Téléchargez. Ouvrez logtotal.com et déposez le fichier .jsonl.
- Nettoyez.
- Passez en revue.
Quand ça tourne mal
| Symptôme | Cause probable | Fix |
|---|---|---|
| 401 | Token invalide, ou l’utilisateur ne dispose pas des autorisations de requête Data Lake | Vérifiez les autorisations SDL du rôle |
| Token valide, résultats vides | Utilisateur de service créé au mauvais niveau | Créez-le au niveau du compte ou du site qui détient les données |
| Erreur de connexion ou 404 | URL régionale incorrecte | Utilisez l’URL de la section d’aide de votre console |
| Les résultats s’arrêtent à un chiffre rond | Limite de lignes | Divisez la fenêtre temporelle |
| Les champs reviennent vides | Les noms de champs diffèrent pour cette source de données | Vérifiez les noms dans Event Search |
FAQ
Qu’est-il arrivé à Deep Visibility ?
Deep Visibility était la recherche de télémétrie antérieure de SentinelOne. Les consoles actuelles utilisent Singularity Data Lake et PowerQuery pour le même travail, et c’est la voie que couvre ce guide.
Puis-je exporter les journaux tiers stockés dans le Data Lake ?
Oui, de la même manière. Filtrez sur la source de données et conservez le champ contenant le message original.