AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

  • Início
  • system&network
  • Ubuntu
  • Unix
  • DBA
  • Computer
  • Coding
  • LangChain

Mobile menu

Close
  • Início
  • system&network
    • Recentes
    • Highest score
    • tags
  • Ubuntu
    • Recentes
    • Highest score
    • tags
  • Unix
    • Recentes
    • tags
  • DBA
    • Recentes
    • tags
  • Computer
    • Recentes
    • tags
  • Coding
    • Recentes
    • tags
Início / unix / Perguntas / 732470
Accepted
Artem S. Tashkinov
Artem S. Tashkinov
Asked: 2023-01-21 05:10:54 +0800 CST2023-01-21 05:10:54 +0800 CST 2023-01-21 05:10:54 +0800 CST

Extrair mensagens journalctl/system log "Process 1234 (processname) of user 1000 dumped core" em arquivos separados

  • 772

Aqui está uma questão simples.

Eu quero uma visão geral, por exemplo, arquivos separados com informações de depuração para cada processo que despejou o núcleo extraído de arquivos journalctl.

Aqui está um exemplo de saída:

Jan 17 12:49:45 localhost systemd-coredump[137987]: [?] Process 3045 (xfce4-panel) of user 1000 dumped core.
                                              
                                              Module linux-vdso.so.1 with build-id edcc6cf50d839ad9201a67e8d2de3d1bec5c03fd
                                              Module librsvg-2.so.2 with build-id a172ce96c3c2d136fc30361d4c28b4ab736833e6
                                              Metadata for module librsvg-2.so.2 owned by FDO found: {
                                                      "type" : "rpm",
                                                      "name" : "librsvg2",
                                                      "version" : "2.54.5-1.fc37",
                                                      "architecture" : "x86_64",
                                                      "osCpe" : "cpe:/o:fedoraproject:fedora:37"
                                              }
                                              
                                              Module libpixbufloader-svg.so with build-id 77cf182593e5e19b8bde9397d50f0f4d5acffe51
                                              Metadata for module libpixbufloader-svg.so owned by FDO found: {
                                                      "type" : "rpm",
                                                      "name" : "librsvg2",
                                                      "version" : "2.54.5-1.fc37",
                                                      "architecture" : "x86_64",
                                                      "osCpe" : "cpe:/o:fedoraproject:fedora:37"
                                              }
... lots more similar messages ...
Jan 17 12:49:45 localhost systemd[1]: [email protected]: Deactivated successfully.
journalctl
  • 1 1 respostas
  • 13 Views

1 respostas

  • Voted
  1. Best Answer
    Artem S. Tashkinov
    2023-01-21T05:17:53+08:002023-01-21T05:17:53+08:00

    Não me pergunte porque mas journalctl _COMM=systemd-coredumpnão funciona pois produz: -- No entries --. Nada demais.

    Tenho certeza de que pode ser feito com muito mais facilidade, por exemplo, usando a saída JSON, mas isso envolverá o uso e a análise da jqsaída, mas como não sou um programador adequado, decidi usar awk. Aqui está o que eu tenho:

    #! /bin/bash 
    
    journalctl --output=short-unix | awk '{
        if ($1 ~ /^[0-9]/) {
            if ( found == 1 && fname != "") system("touch -d @"unixts" "fname)
            found=0
        }
        if ($0 ~ "dumped core") { # extract timestamp and process name and generate a filename
            split($1, arr , ".")
            if(arr[1] != "") unixts=arr[1]
            psta=index($0, "(")
            pend=index($0, ")")
            pname=substr($0, psta+1, pend-psta-1)
            fname=pname"-"unixts".txt"
            found=1
        }
        if (found == 1) print $0 >> fname
    }'
    

    Como resultado, você obtém arquivos fáceis de visualizar com um bônus desses arquivos com os mesmos registros de data e hora dos eventos de log apropriados:

    $ ls -la
    drwxr-xr-x.  2 root root    740 Jan 20 13:12 .
    drwxrwxrwt. 22 root root    820 Jan 20 13:12 ..
    -rw-r--r--.  1 root root 105937 Jan 14 19:55 chrome-1673726131.txt
    -rw-r--r--.  1 root root  73845 Jan 13 22:20 xfce4-panel-1673648402.txt
    -rw-r--r--.  1 root root  73853 Jan 14 18:05 xfce4-panel-1673719532.txt
    -rw-r--r--.  1 root root  72205 Jan 16 15:33 xfce4-panel-1673883202.txt
    -rw-r--r--.  1 root root  73845 Jan 17 12:49 xfce4-panel-1673959785.txt
    -rw-r--r--.  1 root root  62702 Jan 10 08:31 xfce4-screensav-1673339519.txt
    -rw-r--r--.  1 root root  62577 Jan 10 08:32 xfce4-screensav-1673339524.txt
    -rw-r--r--.  1 root root  62702 Jan 11 11:13 xfce4-screensav-1673435632.txt
    -rw-r--r--.  1 root root  62577 Jan 11 11:14 xfce4-screensav-1673435640.txt
    

    Espero que isso também seja útil para outras pessoas.

    • 0

relate perguntas

  • Como assistir a saída do serviço systemd?

  • Onde encontrar o arquivo de log de um serviço específico

  • Laptop acorda quando a tampa está fechada

  • Visualize os tempos originais das mensagens do kernel a partir dos logs históricos do sistema

  • Como ver as últimas linhas x do log de serviço systemctl

Sidebar

Stats

  • Perguntas 205573
  • respostas 270741
  • best respostas 135370
  • utilizador 68524
  • Highest score
  • respostas
  • Marko Smith

    Possível firmware ausente /lib/firmware/i915/* para o módulo i915

    • 3 respostas
  • Marko Smith

    Falha ao buscar o repositório de backports jessie

    • 4 respostas
  • Marko Smith

    Como exportar uma chave privada GPG e uma chave pública para um arquivo

    • 4 respostas
  • Marko Smith

    Como podemos executar um comando armazenado em uma variável?

    • 5 respostas
  • Marko Smith

    Como configurar o systemd-resolved e o systemd-networkd para usar o servidor DNS local para resolver domínios locais e o servidor DNS remoto para domínios remotos?

    • 3 respostas
  • Marko Smith

    apt-get update error no Kali Linux após a atualização do dist [duplicado]

    • 2 respostas
  • Marko Smith

    Como ver as últimas linhas x do log de serviço systemctl

    • 5 respostas
  • Marko Smith

    Nano - pule para o final do arquivo

    • 8 respostas
  • Marko Smith

    erro grub: você precisa carregar o kernel primeiro

    • 4 respostas
  • Marko Smith

    Como baixar o pacote não instalá-lo com o comando apt-get?

    • 7 respostas
  • Martin Hope
    user12345 Falha ao buscar o repositório de backports jessie 2019-03-27 04:39:28 +0800 CST
  • Martin Hope
    Carl Por que a maioria dos exemplos do systemd contém WantedBy=multi-user.target? 2019-03-15 11:49:25 +0800 CST
  • Martin Hope
    rocky Como exportar uma chave privada GPG e uma chave pública para um arquivo 2018-11-16 05:36:15 +0800 CST
  • Martin Hope
    Evan Carroll status systemctl mostra: "Estado: degradado" 2018-06-03 18:48:17 +0800 CST
  • Martin Hope
    Tim Como podemos executar um comando armazenado em uma variável? 2018-05-21 04:46:29 +0800 CST
  • Martin Hope
    Ankur S Por que /dev/null é um arquivo? Por que sua função não é implementada como um programa simples? 2018-04-17 07:28:04 +0800 CST
  • Martin Hope
    user3191334 Como ver as últimas linhas x do log de serviço systemctl 2018-02-07 00:14:16 +0800 CST
  • Martin Hope
    Marko Pacak Nano - pule para o final do arquivo 2018-02-01 01:53:03 +0800 CST
  • Martin Hope
    Kidburla Por que verdadeiro e falso são tão grandes? 2018-01-26 12:14:47 +0800 CST
  • Martin Hope
    Christos Baziotis Substitua a string em um arquivo de texto enorme (70 GB), uma linha 2017-12-30 06:58:33 +0800 CST

Hot tag

linux bash debian shell-script text-processing ubuntu centos shell awk ssh

Explore

  • Início
  • Perguntas
    • Recentes
    • Highest score
  • tag
  • help

Footer

AskOverflow.Dev

About Us

  • About Us
  • Contact Us

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve