Hello,
I did some testing with Qlik Sense June 2018 with 2 nodes (central called QlikServer1.domain.local and 1 rim called QlikServer2.domain.local)
I set Central as Slave and rim to Master but I couldn't reproduce your issue meaning that I continued to get data loaded from every nodes.
Could you check in the script logs the following:
- The script build its list of node for the archived logs at line 0248
2019-01-09 12:02:26 0248 FOR each folder in DirList(archivedLogsFolder & '*')
2019-01-09 12:02:26 0249 node_list:
2019-01-09 12:02:26 0250 Load
2019-01-09 12:02:26 0251 'lib://ArchivedLogsFolder/qlikserver1.domain.local'&'\' as folder,
2019-01-09 12:02:26 0252 mid('lib://ArchivedLogsFolder/qlikserver1.domain.local',26) as [Node Name],
2019-01-09 12:02:26 0253 FileTime( 'lib://ArchivedLogsFolder/qlikserver1.domain.local' ) as folder_Time
2019-01-09 12:02:26 0254 AutoGenerate 1
2019-01-09 12:02:26 3 fields found: folder, Node Name, folder_Time,
2019-01-09 12:02:26 1 lines fetched
2019-01-09 12:02:26 0256 NEXT folder
2019-01-09 12:02:26 0249 node_list:
2019-01-09 12:02:26 0250 Load
2019-01-09 12:02:26 0251 'lib://ArchivedLogsFolder/qlikserver2.domain.local'&'\' as folder,
2019-01-09 12:02:26 0252 mid('lib://ArchivedLogsFolder/qlikserver2.domain.local',26) as [Node Name],
2019-01-09 12:02:26 0253 FileTime( 'lib://ArchivedLogsFolder/qlikserver2.domain.local' ) as folder_Time
2019-01-09 12:02:26 0254 AutoGenerate 1
2019-01-09 12:02:26 3 fields found: folder, Node Name, folder_Time,
2019-01-09 12:02:26 2 lines fetched
Could you check in your script logs if it fetches both your central and rim node?
- If it does, further down in the logs you should see it starting to load files in the archived logs folder for your rim node
2019-01-09 12:02:26 0333 for each textFile in FileList(logName & '*.' & extension)
2019-01-09 12:02:26 0336 If FileTime( 'lib://ArchivedLogsFolder/qlikserver2.domain.local/Repository/Audit/QLIKSERVER2_AuditSecurity_Repository_2019-01-09T12.01.00Z.log' ) >= 43473.501689815 then
2019-01-09 12:02:26 0338 CONCATENATE (working)
2019-01-09 12:02:26 0339 LOAD
2019-01-09 12:02:26 0340 Timestamp("Timestamp") AS LogEntryPeriodStart,
2019-01-09 12:02:26 0341 Timestamp("Timestamp") as LogTimeStamp,
2019-01-09 12:02:26 0342 lower(Hostname) as Hostname,
2019-01-09 12:02:26 0343 Description,
2019-01-09 12:02:26 0344 ProxySessionId,
2019-01-09 12:02:26 0345 ProxyPackageId,
2019-01-09 12:02:26 0346 RequestSequenceId,
2019-01-09 12:02:26 0347 ProxySessionId&ProxyPackageId as _proxySessionPackage,
2019-01-09 12:02:26 0348 Message,
2019-01-09 12:02:26 0349 Service,
2019-01-09 12:02:26 0350 Context,
2019-01-09 12:02:26 0351 Command,
2019-01-09 12:02:26 0352 Result,
2019-01-09 12:02:26 0353 ProductVersion,
2019-01-09 12:02:26 0354 ObjectId,
2019-01-09 12:02:26 0355 ObjectName,
2019-01-09 12:02:26 0356 UserDirectory,
2019-01-09 12:02:26 0357 UserDirectory & '\' & UserId as UserId,
2019-01-09 12:02:26 0358
2019-01-09 12:02:26 0359 SecurityClass,
2019-01-09 12:02:26 0360 If(Result=0 or (Result >=200 and Result <=226),dual('OK',0), if(Result=' ',dual('Blank',0), dual('NOK',1))) as Status,
2019-01-09 12:02:26 0361 IF(WildMatch(Message,'* access granted*')>0,SubField(Message,' ',1)&' Access') as [Access Type],
2019-01-09 12:02:26 0362 IF(WildMatch(Message,'* access granted*')>0,Date(Floor("Timestamp"))) as [Access Date],
2019-01-09 12:02:26 0363 IF(Result=403,1) as UsageDenied,
2019-01-09 12:02:26 0364 IF(left(Message,20)='Login access granted',purgechar(TextBetween(Message,'UsageID: ',','),chr(39))) as UsageId,
2019-01-09 12:02:26 0365 IF(left(Message,20)='Login access granted',purgechar(TextBetween(Message,'Accessname: ',','),chr(34)&chr(39)),
2019-01-09 12:02:26 0366 IF(left(Message,24)='Login access for license',purgechar(TextBetween(Message,' Name: ',','),chr(34)&chr(39)))) as [Login Access Rule],
2019-01-09 12:02:26 0367 IF(((Context='/qrs/licenseadd' and not Origin = 'ManagementAccess') OR Context='/qrs/licenseupdate' or Context='/qrs/license/datamarket')
2019-01-09 12:02:26 0368 OR WildMatch(Command,'Add * access','Update * access','Delete license')>0
2019-01-09 12:02:26 0369 OR (index(lower(ObjectName),'license')>=1 AND WildMatch(Command,'Add rule','Update rule','Delete rule')>0),
2019-01-09 12:02:26 0370 1) as [License Allocation],
2019-01-09 12:02:26 0371
2019-01-09 12:02:26 0372 IF(Context='/qrs/license/datamarket','DataMarket License',
2019-01-09 12:02:26 0373 IF(Context='/qrs/licenseadd' and Origin = 'ManagementAccess',null(),
2019-01-09 12:02:26 0374 IF(Context='/qrs/licenseadd' OR Context='/qrs/licenseupdate','Site License',
2019-01-09 12:02:26 0375 IF(left(Message,24)='Login access for license',purgechar(TextBetween(Message,' Name: ',','),chr(34)&chr(39)),
2019-01-09 12:02:26 0376 ObjectName)))) as [Affected Entity],
2019-01-09 12:02:26 0377
2019-01-09 12:02:26 0378 Id as Id_temp
2019-01-09 12:02:26 0379
2019-01-09 12:02:26 0380 FROM 'lib://ArchivedLogsFolder/qlikserver2.domain.local/Repository/Audit/QLIKSERVER2_AuditSecurity_Repository_2019-01-09T12.01.00Z.log'
2019-01-09 12:02:26 0381 (txt, utf8, embedded labels, delimiter is '\t', msq)
2019-01-09 12:02:26 0382 WHERE isnum(Sequence#)
2019-01-09 12:02:26 0383 AND (exists(Command)
2019-01-09 12:02:26 0384 OR (index(lower(ObjectName),'license')>=1 AND (Command = 'Add rule' or Command = 'Update rule' or Command = 'Delete rule'))
2019-01-09 12:02:26 0385 OR SecurityClass = 'License')
2019-01-09 12:02:26 28 fields found: LogEntryPeriodStart, LogTimeStamp, Hostname, Description, ProxySessionId, ProxyPackageId, RequestSequenceId, _proxySessionPackage, Message, Service, Context, Command, Result, ProductVersion, ObjectId, ObjectName, UserDirectory, UserId, SecurityClass, Status, Access Type, Access Date, UsageDenied, UsageId, Login Access Rule, License Allocation, Affected Entity, Id_temp,
2019-01-09 12:02:26 659 lines fetched
Could you check if you see similar behavior and line being fetched?
- Finally, have you tried to switch back the configuration again (Central=Master and Rim= Slave)? Does it work?
Thank you!!
Bastien Laugiero
If a post helps to resolve your issue, please mark the appropriate replies as CORRECT.