Este registro contiene registros de todos los eventos y errores que se produjeron en ABBYY FlexiCapture, como los eventos de inicio y cierre de sesión de los Administradores del sistema, el inicio y la detención del Servidor de aplicaciones y de las estaciones de procesamiento, etc. Este registro de eventos no contiene registros de los eventos que se produjeron en tenants.
Solo los usuarios con permisos de Administrador del sistema pueden descargar registros de eventos desde System Monitor. Un Administrador del sistema es el Administrador de un tenant predeterminado.
Para descargar este registro, use una solicitud POST.
POST https://<server address>/FlexiCapture12/Monitoring/Tenant/GetEventsCSV
Parámetros de la solicitud
- Todos los parámetros son obligatorios. Asegúrese de especificarlos correctamente.
- La búsqueda en Oracle Database distingue entre mayúsculas y minúsculas. Téngalo en cuenta si utiliza Oracle Database.
Name | Tipo | Descripción |
filter | string | Establece los parámetros de filtro. Como resultado, solo se registrarán los logs que cumplan las condiciones del filtro. Para combinar las condiciones, únicamente se pueden usar los operadores AND y OR. Los operadores se especifican en el parámetro GeneralOperator. Ejemplo de parámetros de filtro: filter={
“GeneralOperator”: “AND”,
“FilterItems”: [
{
“PropertyKey”: “Date”,
“PropertyOperator”: “BETWEEN”,
“PropertyValues”: [
“2022-09-12”,
“00:00:00”,
“2023-10-12”,
“23:59:59”
]
}
]
}
Puede encontrar los valores necesarios para los parámetros PropertyKey y PropertyOperator creando el filtro deseado en la Consola de administración y supervisión. Para ello: - En el menú del navegador, haga clic en Más herramientas -> Developer Tools y vaya a la pestaña Network.
- Inicie la Consola de administración y supervisión, vaya a Monitor del sistema → Registro de eventos y haga clic en el botón
. - Especifique los criterios de filtrado y haga clic en Apply.
- Haga clic en la solicitud GetFilteredEvents. Los parámetros de filtrado aparecerán en la pestaña Payload.
¡Importante! Si necesita filtrar eventos para el tenant predeterminado, especifique el parámetro “TenantNameExt” en lugar de “TenantName”: “FilterItems”: [
{
“PropertyKey”: “TenantNameExt”,
“PropertyOperator”: ”=”,
“PropertyValues”: [“Default tenant”]
}
Tenga en cuenta que “TenantName” debe conservarse para el tenant predeterminado en el parámetro columnsOrder. |
columnsOrder | string | Lista de columnas que se agregarán al informe. Los valores posibles son: - ID
- Date
- EventType
- Comment
- UserFullName
- Workstation
- BatchId
- BatchName
- BatchTypeName
- StageFromName
- StageToName
- ProjectName
- RoleName
- TenantName
|
sortColumnindex | int | Especifica la columna que se utilizará para ordenar los registros en el log. |
sortOrder | bool | Especifica el orden en que se ordenarán los registros: - true ordenará los registros en orden descendente,
- false ordenará los registros en orden ascendente.
|
tenantId | int | Especifica los tenants cuyos registros se incluirán en el registro de eventos. Los valores posibles son: - -1 – se incluirán en el log los registros de todos los tenants disponibles.
- 0 – se incluirán en el log los registros del tenant predeterminado.
- 1 y superior – solo se incluirán en el log los registros del tenant con el ID especificado.
|
Puede encontrar un ejemplo de uso de esta API en el script. Descargue el script aquí o use el código del script que se proporciona a continuación.
Los parámetros de este script deben reemplazarse por la dirección de su servidor y sus propias credenciales.
#------------------------------------------------------------------------------
$server = "https://<server address>"
# ruta a la carpeta donde se guardará el Log
$folder = "C:\Temp\Logs\Stage"
$reportFileName = "Tenant_Events-{0:yyMMdd-HHmmss}.csv" -f (Get-Date)
"GeneralOperator": "AND",
"PropertyOperator": "BETWEEN",
&columnsOrder=Id,Date,EventType,Comment,UserFullName,Workstation,BatchId,BatchName,BatchTypeName,StageFromName,StageToName,ProjectName,RoleName,TenantName,
#------------------------------------------------------------------------------
$tenant = "" # Solo el tenant predeterminado
$methodUri = "/Tenant/GetEventsCSV"
$ServerSitePath = "/FlexiCapture12/Monitoring"
function Write-Line($str, $color = "White")
Write-Host $str -ForegroundColor $color
param([Parameter(Mandatory, ValueFromPipeline)] [string]$parent, [string]$child)
if ($parent -eq "") {return $child;}
if ($child -eq ""){return $parent}
if ($parent.endswith("/") -or $parent.endswith("\\")) {$parent = $parent.substring(0,$parent.Length-1)}
if ($child.startswith("/") -or $child.startswith("\\")) {$child = $child.substring(1,$child.Length-1)}
function Get-AuthTicket($server, $user, $password, $tenant)
if ($tenant -ne ''){ $tenantSuffix = "?tenant=$tenant"}
$URL = Join-Uri $authServer "/FlexiCapture12/Server/FCAuth/API/Soap$tenantSuffix"
$SOAPRequest = '<?xml version="1.0" encoding="utf-8"?><soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema"><soap:Body><FindUser xmlns="urn:http://www.abbyy.com/FlexiCapture"><userLogin>user</userLogin></FindUser></soap:Body></soap:Envelope>'
'SOAPAction' = '"#FindUser"'
'Content-Type' = 'text/xml; charset=utf-8'
'Authorization' = "Basic $([System.Convert]::ToBase64String([System.Text.Encoding]::ASCII.GetBytes("$($user):$($password)")))"}
$response1 = Invoke-WebRequest -Uri $URL -Headers $Headers -Body $SOAPRequest -Method 'POST'
return $response1.Headers['AuthTicket']
Write-Line -str "Couldn't get 'AuthTicket': $_" -color "Red"
function Download-CSVReport($server, $tenant, $authTicket, $methodUri, $requestBody, $folder, $reportFileName)
$reportFullFilePath = Join-Path $folder $reportFileName
#crear carpeta en modo silencioso (si no existe)
New-Item -ItemType Directory -Force -Path $folder | Out-Null
if ($authTicket -eq "" -or $authTicket -eq $null)
Write-Line -str "Couldn't get 'CSV-Report'" -color "Red"
$header = @{ "Accept" = "*/*"}
$session = [Microsoft.PowerShell.Commands.WebRequestSession]::new()
$session.Cookies.Add($server, [System.NET.Cookie]::new('FlexiCaptureTmpPrn', "Ticket=$authTicket"))
if ($tenant -ne '') { $tenantInUrl = "/$tenant"}
$uri = Join-Uri $server $ServerSitePath | Join-Uri -child $tenantInUrl | Join-Uri -child $methodUri
$response = Invoke-WebRequest -Uri $uri -Method 'POST' -Headers $header -WebSession $session -Body $requestBody -OutFile $reportFullFilePath -MaximumRedirection 0 -ErrorAction Ignore -PassThru
if ($response.StatusCode -lt 300)
Write-Line "CSV-Report done: $reportFullFilePath" "Green"
Write-Line -str "HttpStatus $($response.StatusCode) in getting CSV-Report." -color "Red"
Write-Line -str "Couldn't get CSV-Report: $_" -color "Red"
$authTicket = Get-AuthTicket -server $server -user $user -password $password -tenant $tenant
Download-CSVReport -server $server -tenant $tenant -authTicket $authTicket -methodUri $methodUri -requestBody $requestBody -folder $folder -reportFileName $reportFileName