Forum Replies Created
-
AuthorReplies
-
Sorry for the late follow up on this. I posted this and then got pulled into a different project. Now back on this one.
The issues was that the Cloud Firewall was blocking the “Data Channel Port Range”. We added ports 1024-65k? and then it worked.
So apparently, CL can make the connection on port 21 and the log shows as established, but the “handshake” was being blocked when using the port 50424.
< 229 Entering Extended Passive Mode (|||50424|)
What I need to figure out now is how is this handshake port determined, and can it be limited to a smaller range.
The Cloud person says he doesn’t want to open such a wide port range.
This test was not using any security just to test connectivity.
I’m also working on using SSL for the FTP connection. I have created my own Certificates but this is not working.
I’ve created the certificates using OpenSSL on the CL server in the PEM format, and then imported them to my FTP server using windows Cert manager.
Everything looks to be correct, but it’s not liking the “subject name’.
CCG is the certificate name/friendly name on the remote server in the personal certificates.
* subject: C=US; ST=MA; O=GEHC; OU=HL7; CN=CCG; myemail@myemail.com
* start date: Aug 10 [fset:wrte:ERR /0: ftp_ob:08/10/2023 13:45:32] Error while trying to write TestSSL.txt.
[fset:wrte:ERR /0: ftp_ob:–/–/—- –:–:–] Detailed error:SSL: certificate subject name ‘CCG’ does not match target host name ‘192.32.43.165’
[fset:wrte:ERR /0: ftp_ob:–/–/—- –:–:–] Curl errCode:60 Curl error: SSL peer certificate or SSH remote key was not OK
I had thought of that, but I’ve had issues in the past where someone removes the mapped drive, then the CL thread no longer works. At least with the \\serverName, it’s always going to make the connection.
I think it was v19 where I had to change my network path from the \ to / in order to update the NetConfig where ever I use fileset-local.
IE: \\server\share\folder
Changed to: //server/share/folder
I just upgraded my DEV server to 20.1 and I can still enter the //server/share/folder, but when I save NetConfig, I get a verification error on every thread using filset-local.
The interface works as I can read/write to all my network shares.
Anyone else having this issue? I’m running on Windows Server 2019.
September 15, 2022 at 9:37 am in reply to: Announcement: Cloverleaf 20.1.1 patch availability #119932Are there any examples on how to set up an alert in v20.1.2 to call a PowerShell script (I think this would be the same for CMD script)?
In v19.1, I would create an alert and then choose EXEC and enter the path to my script like this;
C:\Windows\System32\WindowsPowerShell\v1.0\powershell.exe “&{D:\Qdx_work\Custom_Scripts\CloverleafInterfaceRecycle.ps1}”I’ve upgraded our DEV system to v20.1.2 and the alert is no longer working.
From the CL Release Notes:
External commands on exec alert do not need full path
(25728)
Changing each “exec” alert so that there is the full path is cumbersome when there are many alerts.
However, this is required for CIS 19.1 and newer, due to the Security Whitelist feature.
Global variables can now be added to the whitelist. This requires the user to update the command path
in one place instead of the previous scheme that required each entry to be updated.
The external command must first be added to the whitelist, and then it must be added to one of the
env PATH folder.
There is no more requirement to add a full path for external commands when configuring an alert.I added the example below to the Whitelist.
C:\Windows\System32\WindowsPowerShell\v1.0\powershell.exeBut I still have to enter the full path in the EXEC section. If I don’t enter the PowerShell path, my alert will not work.
IE: C:\Windows\System32\WindowsPowerShell\v1.0\powershell.exe “&{D:\Qdx_work\Custom_Scripts\CloverleafInterfaceRecycle.ps1}”After reading the release notes, I’m thinking I don’t have to enter the full path of PowerShell, just this:
D:\Qdx_work\Custom_Scripts\CloverleafInterfaceRecycle.ps1I tried adding this to the PowerShell location to the environment variables, PATH
C:\Windows\System32\WindowsPowerShell\v1.0
Then rebooted, but I cannot enter the shortened EXEC in the alert. It will not fire.
Am I misunderstanding the release notes, or missing a configuration?Thanks for the feedback.
I tried the binary in the fconfigure and that did not work, but then I realized I had to set my Thread>Protocol>Encoding to binary (was ASCII).
This worked. I can now read all the files in the folder, I break it down based on file extension and then format/create/copy based on that.IF PDF:
set outputFile [open $pdfFileName wb]
fconfigure $outputFile -translation binary -encoding binary
puts $outputFile $msg
close $outputFileJim pointed out that in my version of Cloverleaf, that in the protocol properties, there is a setting called “File Mask” where you can filter what extension types the CL will process.
Now knowing this, I may go back and rewrite my code to only process the TXT file, then use TCL to copy the PDF file where it won’t go through any sort of formatting. I think this approach may be cleaner in the end, less confusing code.I was reading the Infor documents and it says you can add multiple wildcards separated by a comma, no spaces. But this doesn’t seem to work for me.
{ IBFILEMASK *.txt,*.tmp }
Tried to encapsulate it with {} and this doesn’t work either. Also tried the single quotes.
{ IBFILEMASK {*.txt,*.tmp} }
I really only need the TXT file, but I am reading the TXT file and if the PDF was not there I would write the file back to the import folder as *.tmp and wait for the next scan. Now when I read the tmp file, I know it’s the second attempt and if the PDF still isn’t there, I log the error and delete the msg.
If I can’t get the multiple files working here, I can always come up with a counter.Added this line.
if { ($err == “SQL_ERROR”) || ($err == “SQL_ERROR_WITH_INFO”) } {
lappend logFileOutputMsg ” ERROR while Executing SQL Stored Procedure…$SQLCmd”
set err2 [odbc SQLGetDiagRec SQL_HANDLE_STMT $hstmt 1 SqlState NativeError MessageText 511 TextLength]
lappend logFileOutputMsg ” SqlState>$SqlState<…"
lappend logFileOutputMsg ” NativeError>$NativeError<…"
lappend logFileOutputMsg ” MessageText>$MessageText<…"
}
This was the response from first Error.
SqlState>HY000<…
NativeError>0<…
MessageText>[Microsoft][ODBC SQL Server Driver]Connection is busy with results for another hstmt<…
Based on the
Think I may have found the issue. I can
I ran these tests over the weekend and still have the same issue. I changed the Sleep to 90 and the hcimsiutil to -Z. Will run more tests and verify.
Thanks for the feedback. I
I looked up the lock manager and it appears that’s only for Unix.
I was able to reproduce this in house by running a scheduled task every 10 minutes to recycel the QDX engine. I found 3 times where the threads got stuck at initialization and all 3 times it was a different thread. Here is one sample right before it hung.
[pd :pdtd:INFO/0: billing] Throwing startup control switches
[pd :pdtd:INFO/0: billing] Throwing OB post-SMS dequeue switch
[icl :icl :DBUG/2: billing] Sending to thread ‘qdxprocess_xlate’, command ‘pstart billing’
[diag:leak:DBUG/0: billing] diag imh alloc 0x00A8BC70
[diag:leak:DBUG/0: billing] diag ptm alloc 0x00A8BC90
[pti :msg :DBUG/1: billing] Send PTM 0x00A8BC90 from 12 to 1: data 0x00A8BC70
[xlt :thre:DBUG/1: billing] Notifying processes of new thread
[xlt :thre:DBUG/1: billing] Open New Thread Event, name: C:gehc-itccgquovadxqdx5.3integrator_brian/witt/NTE
[pd :thrd:INFO/0:qdxprocess_cmd] Thread reqs auto-started.
[pd :thrd:INFO/0:qdxprocess_cmd] Starting protocol thread reqs.
[diag:leak:DBUG/0:qdxprocess_cmd] diag psa alloc 0x00A8BCC8
[pti :thre:INFO/1:qdxprocess_cmd] Creating new thread
[pti :thre:DBUG/1:qdxprocess_cmd] Created new pthread, ptid: 0x000000DC
I don
I receive an XML msg via TCP to my thread. I then parse that msg to get needed info to go and find a corresponding PDF file in a different local folder. Then I take key info from that xml msg (MRN, acct#, etc
I did not resolve this the way I had hoped. I ended up doing all of my TCL file renaming and moved my local files to a TEMP folder. I then setup a scheduled task (batch file) to run every 15 minutes to copy/delete my files from the TEMP folder over to the Mapped drive.
Not really what I wanted. I wanted my file copy to be done in the TCL proc in real time and avoid the scheduled task.
October 30, 2009 at 4:19 pm in reply to: Get the filename on IBDir Parse and pass to OB filename #65658Jerry/All,
How did you get this to work?
I have thread_a that scans a local folder for PDF files. It then
Okay, I have one even stranger.
I can
-
AuthorReplies