'\" t
.\"     Title: sssd-systemtap
.\"    Author: O autor do SSSD - https://github.com/SSSD/sssd/
.\" Generator: DocBook XSL Stylesheets vsnapshot <http://docbook.sf.net/>
.\"      Date: 06/09/2026
.\"    Manual: Formatos de Ficheiros e Convenções
.\"    Source: SSSD
.\"  Language: English
.\"
.TH "SSSD\-SYSTEMTAP" "5" "06/09/2026" "SSSD" "Formatos de Ficheiros e Conven"
.\" -----------------------------------------------------------------
.\" * Define some portability stuff
.\" -----------------------------------------------------------------
.\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
.\" http://bugs.debian.org/507673
.\" http://lists.gnu.org/archive/html/groff/2009-02/msg00013.html
.\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
.ie \n(.g .ds Aq \(aq
.el       .ds Aq '
.\" -----------------------------------------------------------------
.\" * set default formatting
.\" -----------------------------------------------------------------
.\" disable hyphenation
.nh
.\" disable justification (adjust text to left margin only)
.ad l
.\" -----------------------------------------------------------------
.\" * MAIN CONTENT STARTS HERE *
.\" -----------------------------------------------------------------
.SH "NAME"
sssd-systemtap \- Informação de systemtap do SSSD
.SH "DESCRIÇÃO"
.PP
Este manual fornece informação sobre a funcionalidade systemtap no
\fBsssd\fR(8)\&.
.PP
Pontos SystemTap Probe foram adicionados em várias localizações no código do SSSD para assistir na despistagem de problemas e análise de problemas relacionados com eficiência de desempenho\&.
.PP
.RS 4
.ie n \{\
\h'-04'\(bu\h'+03'\c
.\}
.el \{\
.sp -1
.IP \(bu 2.3
.\}
Exemplos de scripts do SystemTap estão disponíveis em /usr/share/sssd/systemtap/
.RE
.sp
.RS 4
.ie n \{\
\h'-04'\(bu\h'+03'\c
.\}
.el \{\
.sp -1
.IP \(bu 2.3
.\}
Provas e funções variadas estão definidas em /usr/share/systemtap/tapset/sssd\&.stp e /usr/share/systemtap/tapset/sssd_functions\&.stp respetivamente\&.
.RE
.sp
.SH "PONTOS DE PROVA"
.PP
A informação abaixo lista os pontos de prova e argumentos disponíveis no seguinte formato:
.PP
probe $name
.RS 4
Descrição de ponto de prova
.sp
.if n \{\
.RS 4
.\}
.nf
variable1:datatype
variable2:datatype
variable3:datatype
\&.\&.\&.
                        
.fi
.if n \{\
.RE
.\}
.RE
.SS "Provas de Transação de Base de Dados"
.PP
.PP
probe sssd_transaction_start
.RS 4
Arranca de uma transação sysdb, prova a função sysdb_transaction_start()\&.
.sp
.if n \{\
.RS 4
.\}
.nf
nesting:integer
probestr:string
                        
.fi
.if n \{\
.RE
.\}
.RE
.PP
probe sssd_transaction_cancel
.RS 4
Cancelamento de uma transação sysdb, prova a função sysdb_transaction_cancel()\&.
.sp
.if n \{\
.RS 4
.\}
.nf
nesting:integer
probestr:string
                        
.fi
.if n \{\
.RE
.\}
.RE
.PP
probe sssd_transaction_commit_before
.RS 4
Prova a função sysdb_transaction_commit_before()\&.
.sp
.if n \{\
.RS 4
.\}
.nf
nesting:integer
probestr:string
                        
.fi
.if n \{\
.RE
.\}
.RE
.PP
probe sssd_transaction_commit_after
.RS 4
Prova a função sysdb_transaction_commit_after()\&.
.sp
.if n \{\
.RS 4
.\}
.nf
nesting:integer
probestr:string
                        
.fi
.if n \{\
.RE
.\}
.RE
.SS "Provas de Busca do LDAP"
.PP
.PP
probe sdap_search_send
.RS 4
Prova a função sdap_get_generic_ext_send()\&.
.sp
.if n \{\
.RS 4
.\}
.nf
base:string
scope:integer
filter:string
attrs:string
probestr:string
                        
.fi
.if n \{\
.RE
.\}
.RE
.PP
probe sdap_search_recv
.RS 4
Prova a função sdap_get_generic_ext_recv()\&.
.sp
.if n \{\
.RS 4
.\}
.nf
base:string
scope:integer
filter:string
probestr:string
                        
.fi
.if n \{\
.RE
.\}
.RE
.PP
probe sdap_parse_entry
.RS 4
Prova a função sdap_parse_entry()\&. É chamada repetidamente com cada atributo recebido\&.
.sp
.if n \{\
.RS 4
.\}
.nf
attr:string
value:string
                        
.fi
.if n \{\
.RE
.\}
.RE
.PP
probe sdap_parse_entry_done
.RS 4
Prova a função sdap_parse_entry()\&. É chamada quando a análise de objecto recebido é concluída\&.
.RE
.PP
probe sdap_deref_send
.RS 4
Prova a função sdap_deref_search_send()\&.
.sp
.if n \{\
.RS 4
.\}
.nf
base_dn:string
deref_attr:string
probestr:string
                        
.fi
.if n \{\
.RE
.\}
.RE
.PP
probe sdap_deref_recv
.RS 4
Prova a função sdap_deref_search_recv()\&.
.sp
.if n \{\
.RS 4
.\}
.nf
base:string
scope:integer
filter:string
probestr:string
                        
.fi
.if n \{\
.RE
.\}
.RE
.SS "Provas de Pedido de Conta LDAP"
.PP
.PP
probe sdap_acct_req_send
.RS 4
Prova a função sdap_acct_req_send()\&.
.sp
.if n \{\
.RS 4
.\}
.nf
entry_type:int
filter_type:int
filter_value:string
extra_value:string
                       
.fi
.if n \{\
.RE
.\}
.RE
.PP
probe sdap_acct_req_recv
.RS 4
Prova a função sdap_acct_req_recv()\&.
.sp
.if n \{\
.RS 4
.\}
.nf
entry_type:int
filter_type:int
filter_value:string
extra_value:string
                       
.fi
.if n \{\
.RE
.\}
.RE
.SS "Provas de Busca de Utilizador LDAP"
.PP
.PP
probe sdap_search_user_send
.RS 4
Prova a função sdap_search_user_send()\&.
.sp
.if n \{\
.RS 4
.\}
.nf
filter:string
                       
.fi
.if n \{\
.RE
.\}
.RE
.PP
probe sdap_search_user_recv
.RS 4
Prova a função sdap_search_user_recv()\&.
.sp
.if n \{\
.RS 4
.\}
.nf
filter:string
                       
.fi
.if n \{\
.RE
.\}
.RE
.PP
probe sdap_search_user_save_begin
.RS 4
Prova a função sdap_search_user_save_begin()\&.
.sp
.if n \{\
.RS 4
.\}
.nf
filter:string
                       
.fi
.if n \{\
.RE
.\}
.RE
.PP
probe sdap_search_user_save_end
.RS 4
Prova a função sdap_search_user_save_end()\&.
.sp
.if n \{\
.RS 4
.\}
.nf
filter:string
                       
.fi
.if n \{\
.RE
.\}
.RE
.SS "Provas de Pedido de Provedor de Dados"
.PP
.PP
probe dp_req_send
.RS 4
Um pedido de Provedor de Dados é submetido\&.
.sp
.if n \{\
.RS 4
.\}
.nf
dp_req_domain:string
dp_req_name:string
dp_req_target:int
dp_req_method:int
                       
.fi
.if n \{\
.RE
.\}
.RE
.PP
probe dp_req_done
.RS 4
Um pedido de Provedor de Dados é completado\&.
.sp
.if n \{\
.RS 4
.\}
.nf
dp_req_name:string
dp_req_target:int
dp_req_method:int
dp_ret:int
dp_errorstr:string
                       
.fi
.if n \{\
.RE
.\}
.RE
.SS "FUNÇÕES VARIADAS"
.PP
A informação abaixo lista os pontos de prova e argumentos disponíveis no seguinte formato:
.PP
function acct_req_desc(entry_type)
.RS 4
Converte entry_type em string e retorna a string
.RE
.PP
function sssd_acct_req_probestr(fc_name, entry_type, filter_type, filter_value, extra_value)
.RS 4
Cria string de prova baseada no tipo de filtro
.RE
.PP
function dp_target_str(target)
.RS 4
Convert alvo em string e retorna a string
.RE
.PP
function dp_method_str(target)
.RS 4
Converte método em string e retorna a string
.RE
.SH "EXEMPLOS DE SCRIPTS DO SYSTEMTAP"
.PP
Arranca o script SystemTap (\fBstap /usr/share/sssd/systemtap/<script_name>\&.stp\fR), depois executa uma operação de identidade e o script irá recolher informação a partir das provas\&.
.PP
Os scripts fornecidos do SystemTap são:
.PP
dp_request\&.stp
.RS 4
Monitorização da performance de pedido de provedor de dados\&.
.RE
.PP
id_perf\&.stp
.RS 4
Monitorização da performance do comando
\fBid\fR\&.
.RE
.PP
ldap_perf\&.stp
.RS 4
Monitorização das consultas LDAP\&.
.RE
.PP
nested_group_perf\&.stp
.RS 4
Performance da resolução de grupos aninhados\&.
.RE
.SH "VEJA TAMBÉM"
.PP
\fBsssd\fR(8),
\fBsssd.conf\fR(5),
\fBsssd-ldap\fR(5),
\fBsssd-ldap-attributes\fR(5),
\fBsssd-krb5\fR(5),
\fBsssd-simple\fR(5),
\fBsssd-ipa\fR(5),
\fBsssd-ad\fR(5),
\fBsssd-idp\fR(5),
\fBsssd-sudo\fR(5),
\fBsssd-session-recording\fR(5),
\fBsss_cache\fR(8),
\fBsss_debuglevel\fR(8),
\fBsss_obfuscate\fR(8),
\fBsss_seed\fR(8),
\fBsssd_krb5_locator_plugin\fR(8),
\fBsss_ssh_authorizedkeys\fR(1), \fBsss_ssh_knownhosts\fR(1),
\fBsssd-ifp\fR(5),
\fBpam_sss\fR(8)\&.
\fBsss_rpcidmapd\fR(5)
\fBsssd-systemtap\fR(5)
.SH "AUTHORS"
.PP
\fBO autor do SSSD \-
https://github\&.com/SSSD/sssd/\fR
