Vorrei raccogliere tutti i registri di executor nel driver dell'applicazione Spark a livello di programmazione. (Quando qualcosa è fallito, voglio raccogliere e archiviare tutti i registri pertinenti.) C'è un modo carino per farlo?Ottieni tutti i registri di esecuzione di Apache Spark
Un'idea è creare un RDD vuoto con una partizione per esecutore. Poi in qualche modo mi assicuro che ogni partizione venga effettivamente elaborata su un altro esecutore (non so come) e faccia un mapPartitions
in cui carico il log dell'esecutore dal disco, e poi un collect
per scaricarli nell'applicazione.
Grazie, questa è una bella soluzione! Al giorno d'oggi eseguiamo per lo più su YARN, e YARN fornisce un po 'di gestione per i file di log. Mentre non ho ancora capito come configurarlo, ha anche risolto molti dei nostri problemi. –