Vraag probleem Exact download

Ok, ondertussen kan ik weer op de invantive cloud.

Wij runnen elke dag om 13:00 uur en om 23:00 uur een batch om met de Invantive Data Hub data uit Exact Online te halen.

Gisteravond heeft dat tot niets geleid, exit code 7.

Als ik nu in de Systeemberichten kijk op Invantive Cloud dan zie ik daar niets van terug.

Er is wat aanlog gedoe van mij zichtbaar vandaag in Systeemberichten en de volgende meldingen zijn van de 17e. Op sommige dagen werkt het ook gewoon. maar dus gisteravond weer niet.

Wat mij altijd al verbaasd heeft is dat de datumdie bij die systeemberichten wordt weggeschreven. Daar zit zomaar twee uur tussen.

Ik was genoodzaakt om dit probleem een poosje met rust te laten maar ik wil dat nu weer oppakken.

De situatie is nog steeds zoals omschreven en soms werkt het wel en krijg ik wel contact met de Invantive omgeving, maar regelmatig ook niet.

Wij hebben twee maal per dag een job lopen die connectie maakt met de exact omgeving via invantive. Een om 13:00 uur en een om 23:00 uur.

Als ik dan naar september tot nu toe kijk, dan zie ik in de logfile van de job van 13:00 uur op geen enkele dag iets terug en van de job om 23:00 uur allen op 2, 3, 4, 9 en 10 september wel.

Het tijdsverschil van 2 uur is bewust; alle afgedrukte tijden op alle platformen in alle tijdzones worden afgedrukt in UTC. Voor Nederland is dat momenteel 2 uur verschil. Dit maakt het eenvoudiger om tijden te ijken tussen apparaten in verschillende tijdzones.

Advies voor de melding is om het logbestand van Invantive Data Hub te bestuderen. Gelieve die (geanonimiseerd) als tekst toe te voegen, of anders te mailen aan support@invantive.com als tekst-bijlage (*.txt) onder verwijzing naar de URL van deze vraag.

Ik heb zo juist het bestand naar het genoemde mail adres gestuurd.

Op basis van de informatie uit de Invantive Cloud-systeemberichten valt op te maken dat er bijvoorbeeld 12 en 13 september geen verbinding tot stand gebracht is met Invantive Cloud en/of Invantive Customer Service. Mogelijkerwijs heeft het programma niet gedraaid of is er een andere reden binnen het eigen netwerk.

Advies is om het logbestand van Invantive Data Hub te bestuderen. Dit bestand dient op de server of workstation te vinden zijn waar Data Hub op draait. Vaak staat het logbestand in de map c:\jobs\log, maar uiteindelijk kan degene die het batchbestand onderhoudt dat gedraaid wordt de locatie precies aangeven.

Komt u er aan de hand van het logbestand niet uit? Stuur die dan aan support@invantive.com als tekstbijlage (*.txt) onder verwijzing naar de URL van deze vraag.

Ik heb een tekst file opgestuurd met de melding die ik krijg indien ik de Invantive Data Hub software opstart.
Ik zou graag uitleg willen hebben wat daar nu gebeurd en wat ik moet doen om het te voorkomen.

De melding bevat:

Unhandled Exception: Invantive.Basics.ValidationException: itgencsy020: Could not determine device information such as external IP and clock drift from the Internet. Please try again later. ---> System.Net.WebException: The underlying connection was closed: Could not establish trust relationship for the SSL/TLS secure channel. ---> System.Security.Authentication.AuthenticationException: The remote certificate is invalid according to the validation procedure.

Invantive hecht veel waarde aan het ontoegankelijk houden van data voor ongeautoriseerde derden. Daarom verbeteren we regelmatig de beveiliging zodra er nieuwe inzichten zijn.

Recent zijn daarom een reeks van verouderde protocollen voor versleuteling uitgeschakeld zoals zichtbaar op SSL Server Test: customerservice.invantive.com (Powered by Qualys SSL Labs) en Website test: customerservice.invantive.com.

Mogelijkerwijs veroorzaakt dit een storing; niet iedere server heeft een Windows-versie die de nieuwere protocollen ondersteunt.

We raden u aan om te controleren dat een ondersteunde Windows-versie gebruikt wordt zoals Windows Server 2019 of Windows Server 2022. Compatibiliteit met oudere Windows-versies zoals Windows Server 2016 is niet gegarandeerd. Upgrade indien nodig naar een nieuwe Windows-versie.

Daarnaast raden we u aan om zekerheidshalve een upgrade te plaatsen naar Data Hub 23.0 vanaf Invantive(R) Data Hub 23.0.32 | Release Notes.

Mocht de SQL Server-database waar Exact Online naar toe gekopieerd wordt online staan, bijvoorbeeld in Azure, dan kunt u ook het gebruik van Invantive Cloud overwegen.

Details
Unhandled Exception: Invantive.Basics.ValidationException: itgencsy020: Could not determine device information such as external IP and clock drift from the Internet. Please try again later. ---> System.Net.WebException: The underlying connection was closed: Could not establish trust relationship for the SSL/TLS secure channel. ---> System.Security.Authentication.AuthenticationException: The remote certificate is invalid according to the validation procedure.
   at System.Net.Security.SslState.StartSendAuthResetSignal(ProtocolToken message, AsyncProtocolRequest asyncRequest, Exception exception)
   at System.Net.Security.SslState.CheckCompletionBeforeNextReceive(ProtocolToken message, AsyncProtocolRequest asyncRequest)
   at System.Net.Security.SslState.ProcessReceivedBlob(Byte[] buffer, Int32 count, AsyncProtocolRequest asyncRequest)
   at System.Net.Security.SslState.StartReceiveBlob(Byte[] buffer, AsyncProtocolRequest asyncRequest)
   at System.Net.Security.SslState.CheckCompletionBeforeNextReceive(ProtocolToken message, AsyncProtocolRequest asyncRequest)
   at System.Net.Security.SslState.ProcessReceivedBlob(Byte[] buffer, Int32 count, AsyncProtocolRequest asyncRequest)
   at System.Net.Security.SslState.StartReceiveBlob(Byte[] buffer, AsyncProtocolRequest asyncRequest)
   at System.Net.Security.SslState.CheckCompletionBeforeNextReceive(ProtocolToken message, AsyncProtocolRequest asyncRequest)
   at System.Net.Security.SslState.ProcessReceivedBlob(Byte[] buffer, Int32 count, AsyncProtocolRequest asyncRequest)
   at System.Net.Security.SslState.StartReceiveBlob(Byte[] buffer, AsyncProtocolRequest asyncRequest)
   at System.Net.Security.SslState.CheckCompletionBeforeNextReceive(ProtocolToken message, AsyncProtocolRequest asyncRequest)
   at System.Net.Security.SslState.ProcessReceivedBlob(Byte[] buffer, Int32 count, AsyncProtocolRequest asyncRequest)
   at System.Net.Security.SslState.StartReceiveBlob(Byte[] buffer, AsyncProtocolRequest asyncRequest)
   at System.Net.Security.SslState.CheckCompletionBeforeNextReceive(ProtocolToken message, AsyncProtocolRequest asyncRequest)
   at System.Net.Security.SslState.ProcessReceivedBlob(Byte[] buffer, Int32 count, AsyncProtocolRequest asyncRequest)
   at System.Net.Security.SslState.StartReceiveBlob(Byte[] buffer, AsyncProtocolRequest asyncRequest)
   at System.Net.Security.SslState.CheckCompletionBeforeNextReceive(ProtocolToken message, AsyncProtocolRequest asyncRequest)
   at System.Net.Security.SslState.ProcessReceivedBlob(Byte[] buffer, Int32 count, AsyncProtocolRequest asyncRequest)
   at System.Net.Security.SslState.StartReceiveBlob(Byte[] buffer, AsyncProtocolRequest asyncRequest)
   at System.Net.Security.SslState.CheckCompletionBeforeNextReceive(ProtocolToken message, AsyncProtocolRequest asyncRequest)
   at System.Net.Security.SslState.ProcessReceivedBlob(Byte[] buffer, Int32 count, AsyncProtocolRequest asyncRequest)
   at System.Net.Security.SslState.StartReceiveBlob(Byte[] buffer, AsyncProtocolRequest asyncRequest)
   at System.Net.Security.SslState.CheckCompletionBeforeNextReceive(ProtocolToken message, AsyncProtocolRequest asyncRequest)
   at System.Net.Security.SslState.ForceAuthentication(Boolean receiveFirst, Byte[] buffer, AsyncProtocolRequest asyncRequest, Boolean renegotiation)
   at System.Net.Security.SslState.ProcessAuthentication(LazyAsyncResult lazyResult)
   at System.Threading.ExecutionContext.RunInternal(ExecutionContext executionContext, ContextCallback callback, Object state, Boolean preserveSyncCtx)
   at System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state, Boolean preserveSyncCtx)
   at System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state)
   at System.Net.TlsStream.ProcessAuthentication(LazyAsyncResult result)
   at System.Net.TlsStream.Write(Byte[] buffer, Int32 offset, Int32 size)
   at System.Net.PooledStream.Write(Byte[] buffer, Int32 offset, Int32 size)
   at System.Net.ConnectStream.WriteHeaders(Boolean async)
   --- End of inner exception stack trace ---
   at System.Net.HttpWebRequest.GetRequestStream(TransportContext& context)
   at System.Net.HttpWebRequest.GetRequestStream()
   at Invantive.Basics.CustomerServiceClientUtility.PostMessageToCustomerServiceUrl(GlobalState owner, ExecutionOptions executionOptions, IBasicProviderManager manager, String url, Byte[] uncompressedData, String iuid, String dataContainerId, String userAgent, String expectedAnswerEnd, Boolean compress, Int32 timeoutMs, String mimeType, CookieContainer cookies, Nullable`1 providerObjectId)
   at IBC.UB.Z(GlobalState , ExecutionOptions , IBasicProviderManager , String , Byte[] , String , String , String , String , Boolean , Int32 , String , CookieContainer , Nullable`1 )
   at Invantive.Basics.CustomerServiceClientUtility.SendMessageToServer[TR](GlobalState owner, ExecutionOptions executionOptions, IBasicProviderManager manager, String url, Object itemToSend, String iuid, String dataContainerId, Int32 timeout)
   at Invantive.Basics.CustomerServiceClientUtility.SendPackagedMessageToCustomerService[T,TR](GlobalState owner, ExecutionOptions executionOptions, IBasicProviderManager manager, CustomerServiceEnvelope`1 envelope, Int32 timeout)
   at Invantive.Basics.CustomerServiceClientUtility.SendMyInfoToCustomerService(GlobalState owner, ExecutionOptions executionOptions, IBasicProviderManager manager, CustomerServiceEnvelope`1 envelope)
   at IBC.HET.Z(GlobalState , ExecutionOptions , IBasicProviderManager , CustomerServiceEnvelope`1 )
   at Invantive.Basics.CustomerServiceClientUtility.GetMyInfo(GlobalState owner, ExecutionOptions executionOptions, IBasicProviderManager manager, String iiid, String iuid, String dataContainerId, Boolean allowFromCache, Nullable`1 maxTries, Nullable`1 tryIntervalSec)
   --- End of inner exception stack trace ---
   at Invantive.Basics.CustomerServiceClientUtility.GetMyInfo(GlobalState owner, ExecutionOptions executionOptions, IBasicProviderManager manager, String iiid, String iuid, String dataContainerId, Boolean allowFromCache, Nullable`1 maxTries, Nullable`1 tryIntervalSec)
   at IBC.JFF.Z(GlobalState , ExecutionOptions , IBasicProviderManager , String , String , String , Boolean , Nullable`1 , Nullable`1 )
   at Invantive.Basics.BaseSystemHelper.RT.Z()
   at Invantive.Basics.SessionVariables.GM`1.Z(String )
   at System.Collections.Concurrent.ConcurrentDictionary`2.GetOrAdd(TKey key, Func`2 valueFactory)
   at Invantive.Basics.SessionVariables.GetOrSet[T](GlobalState owner, ExecutionOptions executionOptions, String key, Func`1 initializer, Func`2 predicate)
   at Invantive.Basics.BaseSystemHelper.GetIpV6AddressDeviceExternal(GlobalState owner, ExecutionOptions executionOptions, IBasicProviderManager manager, String iiid, String iuid)
   at IBC.QZT.Z(GlobalState , ExecutionOptions , IBasicProviderManager , String , String )
   at Invantive.Basics.BaseSystemHelper.NT.Z()
   at Invantive.Basics.SessionVariables.GM`1.Z(String )
   at System.Collections.Concurrent.ConcurrentDictionary`2.GetOrAdd(TKey key, Func`2 valueFactory)
   at Invantive.Basics.SessionVariables.GetOrSet[T](GlobalState owner, ExecutionOptions executionOptions, String key, Func`1 initializer, Func`2 predicate)
   at Invantive.Basics.BaseSystemHelper.GetIpV6AddressUserExternal(GlobalState owner, ExecutionOptions executionOptions, IBasicProviderManager manager, String iiid, String iuid)
   at IBC.TKT.Z(GlobalState , ExecutionOptions , IBasicProviderManager , String , String )
   at Invantive.Basics.NetworkUtility.IsUserFromInvantiveLan(GlobalState owner, ExecutionOptions executionOptions, IBasicProviderManager manager, IPAddress ipAddressUser)
   at IBC.POF.Z(GlobalState , ExecutionOptions , IBasicProviderManager , IPAddress )
   at Invantive.Basics.InvantiveLicenseManager.DG.Z()
   at Invantive.Basics.SessionVariables.GM`1.Z(String )
   at System.Collections.Concurrent.ConcurrentDictionary`2.GetOrAdd(TKey key, Func`2 valueFactory)
   at Invantive.Basics.SessionVariables.GetOrSet[T](GlobalState owner, ExecutionOptions executionOptions, String key, Func`1 initializer, Func`2 predicate)
   at Invantive.Basics.InvantiveLicenseManager.IsWithinInvantiveNetworkArray(GlobalState owner, ExecutionOptions executionOptions, IBasicProviderManager manager, String iiid, String iuid)
   at IBC.QGM.Z(GlobalState , ExecutionOptions , IBasicProviderManager , String , String )
   at Invantive.Basics.InvantiveLicenseManager.IsWithinInvantiveNetwork(GlobalState owner, ExecutionOptions executionOptions, IBasicProviderManager manager, String iiid, String iuid, Boolean includeLan, Boolean includeInternetServers)
   at IBC.PGM.Z(GlobalState , ExecutionOptions , IBasicProviderManager , String , String , Boolean , Boolean )
   at Invantive.Basics.LicenseHelperBase.Invantive.Basics.ILicenseHelper.IsWithinInvantiveNetwork(GlobalState owner, ExecutionOptions executionOptions, IBasicProviderManager manager, String iiid, String iuid, Boolean includeLan, Boolean includeInternetServers)
   at Invantive.Data.TranslationStore.QJ(GlobalState , ExecutionOptions )
   at Invantive.Data.TranslationStore.GetTranslationOfKey(GlobalState owner, ExecutionOptions executionOptions, String key, String languageCode, Boolean& foundTranslation)
   at Invantive.Data.TranslationStore.GetTranslationOfKey(GlobalState owner, ExecutionOptions executionOptions, String key, Boolean& foundTranslation)
   at Invantive.Data.DataContextBase.GetTranslationOfKey(GlobalState owner, ExecutionOptions executionOptions, String key, Boolean& foundTranslation)
   at Invantive.Data.DataContextBase.GetTranslationOfKey(GlobalState owner, ExecutionOptions executionOptions, String key)
   at Invantive.Data.TranslationsBase.GetTranslationOfKey(GlobalState owner, ExecutionOptions executionOptions, String key)
   at Invantive.Producer.UtilityBaseCore.HandleUnexpectedExceptionDuringBoot(GlobalState owner, ExecutionOptions executionOptions, Nullable`1 messageId2, Exception ex, Boolean rethrow)
   at IDH.S.B(String[] )
   at Invantive.Producer.QueryEngine.Program.Main(String[] arguments)

Vorige week een upgrade uitgevoerd naar versie 23.0. Het resultaat is eigenlijk het zelfde. Soms werkt het en soms ook niet.
Ik kan eventueel de logfile weer door sturen maar waar het volgens mij om gaat is deze regel:

Error itgencun016: Error itgenbpr012: A connection to the database acme\eol2sql could not be established.

Wat zou dit nu kunnen veroorzaken?

Advies is om met de analyse van 19 september 2023 hierboven in overleg te gaan met uw lokale IT-beheerder / firewall-specialist. Indien nodig kan hierbij een Invantive-consultant betrokken worden, maar de foutmelding zal waarschijnlijk op zich duidelijk zijn voor een IT-beheerder / firewall-specialist.

Deze vraag is automatisch gesloten na 2 weken inactiviteit. Het laatste gegeven antwoord is gemarkeerd als oplossing.

Gelieve een nieuwe vraag te stellen via een apart topic als het probleem opnieuw optreedt. Gelieve in de nieuwe vraag een link naar dit topic op te nemen door de URL er van in de tekst te plakken.

Dit topic is 7 dagen na het laatste antwoord automatisch gesloten. Nieuwe antwoorden zijn niet meer toegestaan.