5.11. Compiladores e ferramentas de desenvolvimento
grafana
rebaseada para a versão 6.3.6
O pacote grafana
foi atualizado para a versão 6.3.6, que fornece múltiplas correções e melhorias de bugs. Mudanças notáveis incluem:
- Base de dados: Reescreve a consulta de estatísticas do sistema para um melhor desempenho.
Explorar:
- Conserta o layout do campo de consulta em vista dividida para os navegadores Safari.
-
Adiciona a opção Live para as fontes de dados suportadas, adiciona a
orgId
à URL para fins de compartilhamento. -
Adiciona suporte para os novos parâmetros
iniciais
efinais
doloki
para o ponto final das etiquetas. - Adiciona suporte para alternar o modo de consulta bruta no Explorar, permite alternar entre métricas e logs.
- Exibe o contexto das linhas de registro, não analisa os níveis de registro se fornecidos por campo ou etiqueta.
-
Suporta a nova sintaxe de filtragem
LogQL
. -
Utiliza o novo
TimePicker
da Grafana/UI. -
Lida com novas linhas no
LogRow
Highlighter. - Fixa a navegação de volta ao painel do painel.
- Fixa o filtro por nível de série no gráfico de logs.
- Corrigir problemas quando o carregamento e o gráfico/tabela são colapsados.
- Fixa a seleção/cópia das linhas de troncos.
-
Painel de controle: Corrige o erro de carregamento de painéis de controle
com
links de painel que tinham propriedades ausentes, e corrige a configuração do painel de controle de fuso horário ao exportar para os valores separados por vírgula (CSV) Links de dados. - Editor: Corrige um número onde apenas linhas inteiras estavam sendo copiadas.
-
LDAP: Integração dos componentes de autenticação
multi ldap
eldap
. -
Perfil/UserAdmin: Corrige o agente parser do usuário que trava o
grafana-server
em builds de 32 bits. Prometheus:
-
Evita que o editor do painel trave enquanto muda para a fonte de dados
Prometheus
, muda o comportamento deinserção de braçadeiras
para ser menos irritante. -
Fixa as consultas com o
label_replace
e remove a correspondência de $1 ao carregar o editor de consultas. - Consistentemente permite consultas de várias linhas no editor, levando em conta o fuso horário para o alinhamento dos passos.
-
Utiliza a faixa de painéis sobrepostos por
$__range
em vez da faixa do painel de instrumentos. -
Adiciona filtro de intervalo de tempo à consulta de rótulos em série, escapa
|
literalmente nas variáveis interpoladasda PromQL
. - Fixa enquanto adiciona etiquetas para métricas que contêm colons no Explore.
-
Evita que o editor do painel trave enquanto muda para a fonte de dados
- Auth: Permite expirar as chaves API, devolver dispositivo, os e navegador enquanto lista os tokens auth do usuário em HTTP API, suporta lista e revogação de tokens auth do usuário em UI.
-
DataLinks: Aplica corretamente as variáveis escopadas aos links de dados, segue o fuso horário enquanto exibe o carimbo de data no menu de contexto gráfico, utiliza corretamente o carimbo de data quando interpola as variáveis, corrige a interpolação incorreta do
nome_série ${__series_name}
. - Gráfico: Corrige o problema da legenda clicando no ícone de linha em série e o problema com a barra de rolagem horizontal visível nas janelas, adiciona nova opção de gradiente de preenchimento.
-
Grafite: Evita o globo de variáveis de array de valor único, corrige problemas com a função de alias sendo movida por último, corrige problemas com a
sérieByTag
- Série TimeSeries: Supõe que os valores são todos os números.
-
Bitola/BarGauge: Corrige o problema com os limites perdidos e um gabarito de carga de problemas com o
avg
stat. - PanelLinks: Corrige problema de colisão com o Gauge
-
OAuth: Corrige a falha de login do OAuth em
falta
devido à política de cookies do SameSite, corrige o token de usuário errado atualizado na atualização doOAuth
no proxy DS. - Auth Proxy: Inclui cabeçalhos adicionais como uma parte da chave do cache.
-
cli
: Correção para reconhecer quando em modo dev, corrige a questão da falha decriptografia de senhas-fonte de dados
com o erro sql. - Permissões: Mostrar plugins na navegação para usuários não administradores, mas esconde a configuração de plugins.
- TimePicker: Aumenta a altura máxima de queda rápida de alcance e corrige o problema de estilo para o popover de alcance personalizado.
- Loki: Exibe os logs com cauda ao vivo na ordem correta no Explore.
- Timerange: Corrige um bug onde os intervalos de tempo personalizados não estavam seguindo o Tempo Universal Coordenado (UTC).
-
remote_cache
: Conserta oredis connstring
parsing. -
Alerta: Adicionar tags às regras de alerta, tentativas de enviar notificações por e-mail para todos os endereços de e-mail fornecidos, melhora o teste das regras de alerta, suporte para configurar o campo de conteúdo do notificador de alerta
Discord
. - Alertmanager: Substitui caracteres ilegais por sublinhados nos nomes dos rótulos.
- AzureMonitor: Mudanças que colidem com variáveis Grafana embutidas ou nomes de macros para os Logs Azure.
-
CloudWatch: Tornou a região visível para o Amazon Web Services (AWS) Cloudwatch Expressions, acrescenta a métrica AWS
DocDB
. - GraphPanel: Não ordenar séries quando a tabela de legendas e a coluna de ordenação não estiverem visíveis.
- InfluxDB: Suporta a visualização de logs no Explore.
- MySQL/Postgres/MSSQL: Adiciona análise para intervalos de dias, semanas e anos em macros, adiciona suporte para recarga periódica de certificados do cliente.
-
Plugins: Substitui a lista
DataFormats
pela bandeiraSkipDataQuery
no arquivoplugin.json
. - Refresh picker: Manipula intervalos vazios.
-
Singlestat: Adicione
a
configuração min/max aos sparklines do singlestat. -
Modelagem: Exibe corretamente o
__texto
na variável multi-valor após recarregar a página, suporta a seleção de todos os valores filtrados de uma variável multi-valor. - Frontend: Conserta componente de árvore Json não funcionando problema.
- InfluxDB: Corrige problemas com aspas simples que não escaparam nos filtros de valor do rótulo.
-
Config: Fixa a opção
connectionstring
para acache_controle remota
no arquivodefault.ini.
- Elasticsearch: Corrige a consulta vazia (via variável modelo) deve ser enviada como curinga, corrige os pedidos de fragmentos simultâneos máximos padrão, suporta a visualização de logs no Explore.
- QuadroPainel: Fixa a exibição das anotações.
-
Grafana-CLI: Fixa bandeiras de recepção via linha de comando, invólucro para o
grafana-cli
dentro dos pacotesRPM/DEB
econfig/homepath
são agora bandeiras globais. -
HTTPServer: Conserta a formatação do cabeçalho
X-XSS-Protection
, opções para retornar novos cabeçalhosX-Content-Type-Options
,X-XSS-Protection
eStrict-Transport-Security
, conserta o cabeçalhoStrict-Transport-Security
, serve a Grafana com um prefixo de caminho de URL personalizado.
pcp
rebaseado para a versão 5.0.2
O pacote pcp
foi atualizado para a versão 5.0.2, que fornece múltiplas correções e melhorias de bugs. Mudanças notáveis incluem:
-
Os pacotes
pcp-webapp-*
são agora substituídos pelo pacotegrafana-pcp
epmproxy
. -
A ferramenta
pcp-collectl
é agora substituída pelas configuraçõespmrep
. Novos e melhores agentes de domínio métrico de desempenho (PMDAs):
-
pmdamssql
: Novo PMDA para implementação do Microsoft SQL Server. -
pmdanetcheck
: Novo PMDA para realizar verificações de rede. -
pmdaopenmetrics
: Renomeia agenteprometheus
paraopenmetrics
. -
pmdanfsclient
: Adiciona as métricas de erropor operação
epor montagem
rpc
. -
pmdalmsensors
: Melhorias na análise do nome e tratamento de erros. -
pmdaperfevent
: Suporta eventoshv_24x7
ninho no sistema multi-nó. pmdalinux
:- Manipula corretamente os nós esparsos ou descontínuos em nós.
-
Usa o
instname
cpu e não oinstid
paraper-cpu
numa estatística. -
Adiciona uma placa ativa e total de lajes à análise da
placa
v2 -
Fixa vários soquetes unix, sistema métrico
icmp6
, valor métrico da página de abraço. cálculos,segmentação
em código de interrupção com grandes contagens de CPU -
Obtém mais métricas de rede no espaço de nomes
--container
.
-
pmdabcc
: Fixa o módulo tracepoints para obcc
0.10.0 e versões superiores -
pmdabpftrace
: Novo PMDA para métricas dos roteirosbpftrace
pmdaproc
:-
Corrige o vazamento de memória na atualização da
lista de pendências
. -
Evita chamadas excessivas em
cgroups_scan
. -
Retém caminhos de
grupos
e apenas nomes de instâncias não escapadas.
-
Corrige o vazamento de memória na atualização da
-
pmdaroot
: Melhora o manuseio do comportamento em cache ou inativo docgroup
e refresca o conteúdodo
cgroup
fs também.
-
Fixa as ferramentas de coleta (servidor):
-
pmproxy
: Suporte Openmetrics através do endpoint/metrics
, consolida opmseries/grafana
REST API, e adiciona a nova implementação doPMWEBAPI(3)
REST API assíncrono. -
selinux
: Numerosas atualizações da política de pcp. -
python
pmdas
: Permite o suporte de autenticação, novo métodoset_comm_flags
para definir as bandeiras de comunicação. -
python api
: Exporta opmdaGetContext()
e adiciona o invólucro de depuração. -
perl api
: Assegura o contexto criado para a loja PMDA como com a embalagem de python. -
sistemad
: Adiciona um timeout de 120s em todos os serviços e conserta a falha para iniciar o serviço depmlogger
.
-
Fixa as ferramentas de análise (cliente):
-
pmchart
: Corrige a autoescala do gráfico sob condições de erro de fetch. -
pmrep
: Fixa afórmula wait.formula
paracollectl-dm-sD
ecollectl-sD
. -
pmseries
: Fornece suporte para a palavra-chave delta e melhores timestamps. -
pcp-atop
: Conserta o modo de escrita(-w
) para lidar com a métricaproc
vshotproc
. -
pcp-atopsar
: Corrige o maltrato de alguns argumentos de linha de comando. -
pcp-dstat
: Fixa cabeçalhos desalinhados na saída CSV e manuseio da opção--bits
da linha de comando. -
libpcp
: Conserta osegv do
cockpit-pcp
com contexto local e tratamento de erros de replay multi-arquivos para o(s) arquivo(s) corrompido(s).
-
grafana-pcp
está agora disponível em RHEL 8.2
O pacote grafana-pcp
fornece novas fontes de dados de grafana
e plugins de aplicação conectando o PCP
com a grafana
. Com o pacote grafana-pcp
, você pode analisar métricas históricas de PCP
e métricas de PCP
em tempo real usando a linguagem de consulta pmseries
e serviços ao vivo pmwebapi
, respectivamente. Para mais informações, veja Performance Co-Pilot Grafana Plugin.
(BZ#1685315)
Conjunto de Ferramentas GCC Atualizadas 9
O GCC Toolset 9 é um conjunto de ferramentas de compilação que fornece versões recentes de ferramentas de desenvolvimento. Ele está disponível como um Application Stream na forma de uma Coleção de Software no repositório AppStream
.
As mudanças notáveis introduzidas com o RHEL 8.2 incluem:
- O compilador GCC foi atualizado para a versão 9.2.1, que fornece muitas correções e melhorias de bugs que estão disponíveis no GCC upstream.
Os componentes do GCC Toolset 9 estão agora disponíveis nas duas imagens do contêiner:
-
rhel8/gcc-toolset-9-toolchain
, que inclui o compilador GCC, o depurador GDB, e a ferramenta de automaçãomake
. rhel8/gcc-toolset-9-perftools
, que inclui as ferramentas de monitoramento de desempenho, tais como SystemTap e Valgrind.Para puxar uma imagem de recipiente, execute o seguinte comando como raiz:
# podman pull registry.redhat.io/<image_name>
-
As seguintes ferramentas e versões são fornecidas pelo GCC Toolset 9:
Ferramenta | Versão |
---|---|
GCC | 9.2.1 |
GDB | 8.3 |
Valgrind | 3.15.0 |
SystemTap | 4.1 |
Dyninst | 10.1.0 |
binutils | 2.32 |
elfutils | 0.176 |
dwz | 0.12 |
fazer | 4.2.1 |
strace | 5.1 |
ltrace | 0.7.91 |
annobin | 9.08 |
Para instalar o GCC Toolset 9, execute o seguinte comando como raiz:
# yum instalar gcc-toolset-9
Para executar uma ferramenta do GCC Toolset 9:
$ scl habilita gcc-toolset-9 tool
Para executar uma sessão de shell onde as versões de ferramentas do GCC Toolset 9 têm precedência sobre as versões de sistema dessas ferramentas:
$ scl habilita gcc-toolset-9 bash
Para mais informações, consulte Utilizando o GCC Toolset.
O GCC Toolset 9 agora suporta a descarga do alvo NVIDIA PTX
O compilador GCC no GCC Toolset 9 agora suporta o OpenMP target offloading para NVIDIA PTX.
(BZ#1698607)
O compilador GCC atualizado está agora disponível para a RHEL 8.2
O compilador do sistema GCC, versão 8.3.1, foi atualizado para incluir numerosas correções de erros e melhorias disponíveis no GCC a montante.
A coleção GNU Compiler Collection (GCC) fornece ferramentas para desenvolver aplicações com as linguagens de programação C, C , e Fortran.
Para informações de uso, consulte Desenvolvendo aplicações C e C no RHEL 8.
(BZ#1747157)
Um novo sintonizador para mudar o tamanho máximo do fastbin em glibc
A função malloc
utiliza uma série de caixotes rápidos que retêm pedaços de memória reutilizáveis até um tamanho específico. O tamanho máximo padrão do pedaço é 80 bytes em sistemas de 32 bits e 160 bytes em sistemas de 64 bits. Este aperfeiçoamento introduz uma nova glibc.malloc.mxfast
tunable para a glibc
que permite mudar o tamanho máximo da fastbin.
Biblioteca matemática vetorizada está agora habilitada para o GNU Fortran no GCC Toolset 9
Com esta melhoria, o GNU Fortran do GCC Toolset pode agora usar rotinas da biblioteca matemática vetorizada libmvec
. Anteriormente, o compilador Fortran do GCC Toolset precisava de um arquivo de cabeçalho Fortran antes de poder usar as rotinas da libmvec
fornecidas pela glibc
da GNU C Library.
O glibc.malloc.tcache
sintonizável foi melhorado
A glibc.malloc.tcache_count
tunable permite definir o número máximo de pedaços de memória de cada tamanho que podem ser armazenados no cache por fio (tcache). Com esta atualização, o limite superior do glibc.malloc.tcache_count
tunable foi aumentado de 127 para 65535.
O carregador dinâmico glibc
é aperfeiçoado para fornecer um mecanismo de pré-carga não hermético da biblioteca
Com este aperfeiçoamento, o carregador pode agora ser invocado para carregar um programa de usuário com uma opção --preload
seguido por uma lista de bibliotecas separadas por dois pontos para pré-carregar. Este recurso permite que os usuários invoquem seus programas diretamente através do carregador com uma lista de pré-carga de biblioteca não-interferida.
Anteriormente, os usuários tinham que usar a variável de ambiente LD_PRELOAD que era herdada por todos os processos infantis através de seu ambiente.
GDB agora suporta a extensão ARCH(13) sobre a arquitetura IBM Z
Com este aperfeiçoamento, o GNU Debugger (GDB) agora suporta as novas instruções implementadas pela extensão ARCH(13) sobre a arquitetura IBM Z.
elfutils
rebaseado para a versão 0.178
O pacote elfutils
foi atualizado para a versão 0.178, que fornece múltiplas correções e melhorias de bugs. Mudanças notáveis incluem:
-
elfclassificar
: uma nova ferramenta para analisar objetos ELF. -
debuginfod
: um novo servidor, ferramenta cliente e biblioteca para indexar e buscar automaticamente ELF, DWARF, e fonte de arquivos e arquivos RPM através de HTTP. -
libebl
é agora diretamente compilada emlibdw.so
. -
eu-readelf
tem múltiplas bandeiras novas para notas, numeração de seções e tabelas de símbolos. -
a libdw
melhorou o suporte multithreading. -
a libdw
suporta extensões adicionais do GNU DWARF.
SystemTap rebaseado para a versão 4.2
A ferramenta de instrumentação SystemTap foi atualizada para a versão 4.2. As melhorias notáveis incluem:
- Os backtraces podem agora incluir nomes de arquivos fonte e números de linha.
- Numerosas extensões back-end do Berkeley Packet Filter (BPF) estão agora disponíveis, por exemplo, para looping, timing, e outros processos.
- Um novo serviço de gerenciamento de scripts SystemTap está disponível. Este serviço envia métricas para um sistema de monitoramento compatível com o Prometheus.
-
O SystemTap herdou a funcionalidade de um novo servidor de arquivos HTTP para
elfutils
chamadode debuginfod
. Este servidor envia automaticamente recursos de debugging para SystemTap.
Melhorias nos contadores de desempenho da série IBM Z
As máquinas IBM série Z tipo 0x8561, 0x8562, e 0x3907 (z14 ZR1) são agora reconhecidas pela libpfm
. Eventos de desempenho para monitoramento de operações de criptografia de curvas elípticas (ECC) na série IBM Z estão agora disponíveis. Isto permite o monitoramento de subsistemas adicionais em máquinas da série IBM Z.
(BZ#1731019)
Rust Toolset rebaseado para a versão 1.41
O Rust Toolset foi atualizado para a versão 1.41. As mudanças notáveis incluem:
- A implementação de novas características é agora mais fácil porque a regra dos órfãos é menos rígida.
-
Agora você pode anexar o atributo
#[non_exhaustive]
a umaestrutura
, umenum
, ou variantes deenum
. -
Usando
Box<T>
na Interface de Função Estrangeira (FFI) tem mais garantias agora.Box<T>
terá a mesma Interface Binária de Aplicação (ABI) que um ponteiroT*
na FFI. - O Rust é suposto detectar bugs de segurança da memória em tempo de compilação, mas o verificador de empréstimos anteriores tinha limitações e permitia um comportamento indefinido e a falta de segurança da memória. O novo verificador de vida não-lexical (NLL) pode relatar problemas de falta de segurança de memória como erros graves. Ele agora se aplica às edições Rust 2015 e Rust 2018. Anteriormente, em Rust 2015, o verificador de empréstimos NLL apenas levantava avisos sobre tais problemas.
Para instalar o módulo ferrugem
, execute o seguinte comando como raiz:
# módulo yum instalar ferrugem
Para obter informações sobre o uso, consulte Utilização do conjunto de ferramentas ferrugem.
(BZ#1776847)
LLVM Toolset rebaseado para a versão 9.0.1
O conjunto de ferramentas LLVM foi atualizado para a versão 9.0.1. Com esta atualização, as declarações asm goto
agora são suportadas. Esta mudança permite compilar o kernel Linux nas arquiteturas AMD64 e Intel 64.
Para instalar o módulo llvm-toolset
, execute o seguinte comando como raiz:
#módulo yum instalar llvm-toolset
Para mais informações, consulte Utilizando o conjunto de ferramentas LLVM.
(BZ#1747139)
Go Toolset rebaseado para a versão 1.13
O Go Toolset foi atualizado para a versão 1.13. Melhorias notáveis incluem:
-
Go pode agora usar um módulo criptográfico certificado FIPS quando o sistema RHEL é inicializado no modo FIPS. Os usuários podem ativar este modo manualmente usando a variável de ambiente
GOLANG_FIPS=1
. -
O depurador Delve, versão 1.3.2, está agora disponível para Go. É um depurador de nível de fonte para a linguagem de programação Go
(golang
).
Para instalar o módulo go-toolset
, execute o seguinte comando como raiz:
#módulo yum instalar go-toolset
Para instalar o depurador Delve, execute o seguinte comando como raiz:
# yum install delve
Para depurar um programa helloworld.go
usando Delve, execute o seguinte comando:
$ dlv debug helloworld.go
Para obter mais informações sobre o Go Toolset, consulte Utilizando o Go Toolset.
Para mais informações sobre a Delve, veja a documentação da Delve a montante.
(BZ#1747150)
OpenJDK agora também suporta secp256k1
Anteriormente, o Open Java Development Kit (OpenJDK) podia usar apenas curvas da biblioteca NSS. Consequentemente, o OpenJDK forneceu apenas as curvas secp256r1, secp384r1, e secp521r1 para criptografia de curvas elípticas (ECC). Com esta atualização, o OpenJDK utiliza a implementação interna do ECC e suporta também a curva secp256k1.