Ce journal contient des entrées relatives aux événements et aux erreurs du traitement des documents.
Seuls les utilisateurs disposant des permissions d’administrateur du tenant (ou de System Administrator dans le cas du tenant par défaut) et de Monitoring Operator peuvent télécharger les journaux d’événements à partir de Processing Monitor.
Pour télécharger ce journal, utilisez une requête POST.
POST https://<server address>/FlexiCapture12/Monitoring/Project/GetEventsCSV
- Tous les paramètres sont obligatoires. Assurez-vous qu’ils sont correctement renseignés.
- La recherche dans Oracle Database est sensible à la casse. Veuillez en tenir compte si vous utilisez Oracle Database.
Nom | Type | Description |
filter | string | Définit les paramètres du filtre. Par conséquent, seuls les logs qui répondent aux conditions du filtre seront enregistrés. Seuls les opérateurs AND et OR peuvent être utilisés pour combiner les conditions. Les opérateurs sont spécifiés dans le paramètre GeneralOperator. Exemples de paramètres de filtre : filter={
“GeneralOperator”: “AND”,
“FilterItems”: [
{
“PropertyKey”: “Date”,
“PropertyOperator”: “BETWEEN”,
“PropertyValues”: [
“2021-08-28”,
“00:00:00”,
“2023-09-28”,
“23:59:59”
]
},
{
“PropertyKey”: “Id”,
“PropertyOperator”: ”>=”,
“PropertyValues”: [“127602430”]
},
{
“PropertyKey”: “BatchName”,
“PropertyOperator”: “CONTAINS”,
“PropertyValues”: [“default”]
}
]
}
Vous pouvez trouver les valeurs requises pour les paramètres PropertyKey et PropertyOperator en créant le filtre souhaité dans Administration and Monitoring Console. Pour cela : - Dans le menu du navigateur, cliquez sur More tools -> Developer Tools, puis accédez à l’onglet Network.
- Lancez Administration and Monitoring Console, accédez à Processing Monitor → journal des événements, puis cliquez sur le bouton
. - Spécifiez les critères de filtrage et cliquez sur Apply.
- Cliquez sur la requête GetFilteredEvents. Les paramètres de filtrage seront affichés dans l’onglet Payload.
Important ! Si vous devez filtrer les événements pour les batchs par défaut, spécifiez le paramètre “BatchTypeNameExt” au lieu de “BatchTypeName” : “FilterItems”: [
{
“PropertyKey”: “BatchTypeNameExt”,
“PropertyOperator”: “CONTAINS”,
“PropertyValues”: [“Default”]
}
Veuillez noter que “BatchTypeName” doit être conservé pour le batch par défaut dans le paramètre columnsOrder. |
columnsOrder | string | Liste des colonnes à ajouter au rapport. Les valeurs possibles sont : - ID
- Date
- EventType
- Comment
- UserFullName
- Workstation
- BatchId
- BatchName
- BatchTypeName
- StageFromName
- StageToName
- ProjectName
- RoleName
- TenantName
|
sortColumnindex | int | Spécifie la colonne à utiliser pour trier les enregistrements dans le log. |
sortOrder | bool | Spécifie l’ordre de tri des enregistrements : - true trie les enregistrements par ordre décroissant,
- false trie les enregistrements par ordre croissant.
|
projectId | int | Spécifie les projets dont les enregistrements doivent être inclus dans le journal des événements. Les valeurs possibles sont : - -1 – les enregistrements de tous les projets disponibles seront inclus dans le log.
- 1 et plus – seuls les enregistrements du projet avec l’ID spécifié seront inclus dans le log.
Utilisez la méthode GetProjects pour obtenir tous les ID de projet disponibles. |
Vous trouverez un exemple d’utilisation de cette API dans le script. Téléchargez le script ici ou utilisez le code du script fourni ci-dessous.
Les paramètres de ce script doivent être remplacés par l’adresse de votre serveur, le nom de votre tenant et vos identifiants.
$server = "https://<server address>"
$tenant = "<tenant name>"
#chemin vers le dossier où le Log sera enregistré
$folder = "C:\Temp\Logs\Stage"
$reportFileName = "Project_Events-{0:yyMMdd-HHmmss}.csv" -f (Get-Date)
"Name": "Complex filter",
"GeneralOperator": "AND",
"PropertyOperator": "BETWEEN",
"PropertyValues": ["2018-09-12","00:00:00","2023-10-12","23:59:59"]
"PropertyOperator": ">=",
"PropertyValues": ["127602430"]
&columnsOrder=Id,Date,EventType,Comment,UserFullName,Workstation,BatchId,BatchName,BatchTypeName,StageFromName,StageToName,ProjectName,RoleName,TenantName
#------------------------------------------------------------------------------
$methodUri = "/Project/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
#create folder silent (if not exist)
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$tenant", "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