I/O Timeout usually indicates that the interface is having an issue communicating with the data source.
I think a good next step for you would be to enable I/O tracing. You can find the info in the user manual: https://techsupport.osisoft.com/Downloads/File/6f9b132a-2055-4d20-b7a9-4f72fd624293
Once the issue happens again, you should have more information in the SDK Logs: https://techsupport.osisoft.com/Troubleshooting/KB/3248OSI8/
It might also be worthwhile to setup a script that monitor ping responses (if enabled in your environment) to make sure the issue isn't at the network level.
You can do this with a simple .bat or .ps1 script. Example .bat:
set/p host=Target address:
set/p size=Packet size:
echo Target address = %host% >%pingfile%
for /f "tokens=*" %%A in ('ping %host% -n 1 -l %size%') do (echo %%A>>
for /f "tokens=* skip=2" %%A in ('ping %host% -n 1 -l %size%') do (
echo %date% %time:~0,2%:%time:~3,2%:%time:~6,2% %%A>>%pingfile%
echo %date% %time:~0,2%:%time:~3,2%:%time:~6,2% %%A
timeout 1 >NUL