MicroStrategy ONE
Problemi con i file core dump
Il core dumping funziona correttamente se il file core viene generato nella cartella di destinazione, ad esempio /<path_to_the_location>/core
, durante un arresto anomalo del server. Di seguito sono descritti i passaggi per verificare questa funzionalità sul sistema operativo Linux.
- Ottiene l'ID processo di Intelligence Server mediante l'esecuzione
ps -ef | grep -i mstrsvr
. L'ID processo è 6837 nell'esempio seguente. -
Simulare un arresto anomalo del server eseguendo a
sudo kill -6 <server_process_id>
comando. - Verificare che venga generato un file core nella cartella di destinazione. Ad esempio,
/<path_to_the_location>/core
. La dimensione del file principale deve essere diversa da zero.
$ ps -ef | grep -i mstrsvr
mstr 6837 1 2 12:15 ? 00:02:37 /opt/mstr/MicroStrategy/install/IntelligenceServer/bin/MSTRSvr -s -w /opt/mstr/MicroStrategy/IntelligenceServer -t status-iserver.xml /opt/mstr/MicroStrategy/install/lib/libMSTRSvr2.so -n CastorServer
mstr 32481 32391 0 14:12 pts/0 00:00:00 grep --color=auto -i mstrsvr
Se il file core non viene generato secondo la procedura sopra descritta, è necessario identificare la causa principale. Le possibili cause e i passaggi per risolverli sono descritti di seguito.
Configurazione del sistema operativo Linux non valida o mancante
Vedere Requisiti software e raccomandazioni per la corretta configurazione del sistema operativo per abilitare il core dumping. Assicurati di riavviare il server Intelligence dopo aver applicato le impostazioni.
Configurazione mancante quando Intelligence Server è registrato come servizio
Potrebbe essere necessario riavviare il computer Linux per applicare la configurazione del core dump a livello di sistema operativo. Se il core dumping è ancora disabilitato dopo il riavvio, il profilo utente predefinito potrebbe aver disabilitato la creazione dei file core per i processi avviati nella fase init (durante il riavvio della macchina). Per risolvere questo problema, applicare i passaggi seguenti.
-
Utilizzando
root
autorizzazione, aprire il file/etc/init.d/mstr-<InstallName>-iserver-CastorServer
script di inizializzazione. In genere,<InstallName>
ha la forma diuser@timestamp
. Individua le seguenti righe.Copiastart ()
{ -
Sotto le righe individuate, aggiungere il seguente comando per consentire l'avvio di Intelligence Server come servizio con il file core abilitato.
Copiaulimit -c ulimited
Spazio sul disco insufficiente
È necessario assicurarsi che il disco in cui verrà scritto il file core disponga di spazio libero sufficiente. Si noti che il file principale viene scritto nella directory specificata per kernel.core_pattern
(vedi Abilitazione del core dump per i dettagli), mentre le dimensioni previste per i file di base sono identiche al footprint di memoria di Intelligence Server al momento dell'arresto anomalo. Inoltre, assicurati che la creazione di file di grandi dimensioni (più di 2 GB) sia supportata quando il tuo computer utilizza Network File System (NFS).
Alternativa: elaborare i file principali utilizzando ABRT in RedHat Enterprise Linux 6 e versioni successive
RedHat Linux versione 6.x e successive viene fornito con uno strumento Automatic Bug Reporting Tool (ABRT) che raccoglie e archivia automaticamente i file core dump in /var/spool/abrt
cartella. Se si preferisce questa opzione, sono necessari passaggi aggiuntivi per garantire che il core dumping del server Intelligence possa funzionare insieme ad ABRT. Per una spiegazione dettagliata, fare riferimento a spiegazione ufficiale in merito ad ABRT.
-
Se sono stati seguiti i passaggi in Abilitazione del core dump, aggiungere un commento o rimuovere le seguenti righe da
/etc/sysctl.conf
.Copiakernel.core_pattern = /<path_to_the_location>/core/core.%e.%p.%h.%t
fs.suid_dumpable = 2 -
Abilita la raccolta core dump per Intelligence Server, che non è firmato o confezionato da RedHat. A tale scopo, applica le seguenti righe a
/etc/abrt/abrt-action-save-package-data.conf
:CopiaOpenGPGCheck = no
ProcessUnpackaged = yes -
Configurare la cartella in cui verrà salvato il file principale aggiungendo il seguente parametro
/etc/abrt/abrt.conf
. Per impostazione predefinita, il parametro è commentato e ha un valore pari a/var/spool/abrt
.CopiaDumpLocation =/Your_desired/Path_to_generate/the_core_file
-
Riavviare il servizio ABRT per applicare le impostazioni sopra menzionate. Assicurarsi di eseguire questi comandi come
root
.Copia# service abrtd restart
# service abrt-ccpp start -
Attiva il core dumping e verifica che il file core possa essere creato eseguendo il comando seguente. È fondamentale eseguirlo da
/IntelligenceServer
cartella e prendere nota del percorso del file principale creato.Copia# gcore -o <file> <pid>
Diverse note importanti:
- Assicurarsi che il
DumpLocation
esiste ed è scrivibile dal processo ABRT. - Se si personalizza il
DumpLocation
, assicurarsi che sia diversa dalla cartella specificata perWatchCrashdumpArchiveDir
, un'altra impostazione inabrt.conf
file. - Se il file di base viene troncato o non ne viene ancora eseguito il dump, è possibile esaminare gli accessi dei messaggi di sistema
/var/log/messages
per indagare sul motivo per cui il core dumping ha esito negativo.