hms-networks / flexy-osisoft-connector Goto Github PK
View Code? Open in Web Editor NEWJava application to push tags to an OSISoft PI Server
License: Apache License 2.0
Java application to push tags to an OSISoft PI Server
License: Apache License 2.0
To prevent CSRF defense from blocking requests the X-Requested-With header must be added to API calls.
Allow for Three tag name options, this should be configured via the (json file)/webpage
tagname
ewonname-tagname
tagname-ewonname
Connector crashes when 0 tags are being sent to OSIsoft. log message and shutdown instead.
The main method can throw an uncaught CorruptedTimeTrackerException.
Should have a catch all with generic logging as well.
Separate classes into different packages organized by functionality.
web pages are slow when can't connect because of the loop
add a sleep for if the request fails
Only INT32 is currently supported.
Check maximum size for containerId. Sometimes this can cause an issue.
When saving the configuration via the webpage interface the file is cleared on some systems.
Describe logging in UTC vs local time zone in the README
There is a slash "/" expected at the end of the send data request for PIWEBAPI send data requests, but not for any other request type.
this line will need to append a slash to the connector URL to bring that align with the rest of the connector.
The tag report page should be able to switch the active device without a hard refresh
Add method to handle application shutdown logs and errors in main.
We are trying to use this interface to push into PI 100 points every seconds.
We are using the OCS interface and the version 3.0.14.
The Java program doesn't seem to be able to handle that number of points. Moreover, even with 10 points, the PI server received the values about every 5 seconds.
What can we do to increase the speed and the capacity ?
Thanks
Site_A.Utilities.Compressed_Air.AirTank01.Pressure tag Does not work
releases since 2.4 include 3MB google-java-format-1.8-all-deps.jar. Remove this from build/release process.
add a config option to enable or disable the auto restart functionality.
Capital letter for first character is not permitted per code style convention.
Leave a second certificate example of trusted CA
The third paragraph under "Install the certificate on server" will be more readable with bullets for each step
just add the extension in that part of the readme file for putting certs on the flexy.
fix checking for types "string" and "boolean". if check will always evaluate to true.
From function getGenericTypeBody, if expression always evaluate to true
if (!type.equalsIgnoreCase("string") || !type.equalsIgnoreCase("boolean"))
Under Generate the certificate: change IP address to say domain name or IP address.
Currently tags in the PI server are made with the name tagName-eWONName
An option in the configuration page should be made to allow the following names
tagName-eWONName
eWONName-tagName
tagName
Change "IP" parameter to "URL". Remove "proxyURL". This is just confusing. Also, do not dictate scheme, just let users put the full url in the config file.
When receiving response files, it can be hard to tell if they are updated or not.
Append a time stamp for easier debugging.
Still references outdated configuration web pages. Remove these references.
similar to https://github.com/hms-networks/flexy-cumulocity-connector/tree/main/starting-files
Update github actions accordingly
reference new starter files directory in README
Improve the HTTP response file behavior by including a unique number or value in the name. This prevents the possibility of simultaneous requests overlapping and causing file access errors such as
32603 httpc-http request error
21317 eftp-Write operation is already in progress. New (/usr/responses/dataMessageResponse.json)
Additionally, the cleanup/deletion of response files is inconsistent and should be improved so all temporary response files are deleted once parsed/processed.
When installing certificate.crt, clarify if they should be installing it to Current User or Local Machine
Invalid non json response throws uncaught exception and crashes the application.
More documentation is needed to configure the PiWebAPI authentication method. Only basic is supported but kerberos is used by default.
I saw it is possible for the connector to start missing data when the start time is equal to the end time in EBD calls.
it will grab no data points and move to the next set of data with a much higher chance of getting in the same state once again grabbing no data.
Limit the shortest EBD call to be 5 seconds from start to end.
For consistent releases, create release script. Consider using github actions.
When the application fails to connect or drops a connection it should reattempt connection indefinitely.
Make the default logging level 4
update the logging section of the readme
Currently, the default data poll rate is 5000ms, and the default data post rate is 5000ms.
After implementing the maximum payload restriction in #130, the connector frequently skips data polling because the payload queue is full.
validateURL() should have support for domain names
The Flexy should assign a timestamp to the data rather than use the server timestamp.
Add support for connector historical data diagnostic tags. Currently, this functionality is best implemented by the Cumulocity Connector. You may see the configureQueueDiagnosticTags(boolean)
method here: https://github.com/hms-networks/flexy-cumulocity-connector/blob/38eec26294e551acd6aba36384d0708efdb00073/src/main/java/com/hms_networks/sc/cumulocity/data/CConnectorDataMgr.java#L434
README.md only has documentation for Windows 7. Windows 10 documentation should be created.
Modify the release script to include java application in the startup directory instead of its current location
There is a logical error in the PIWEBAPI tag creation section of the code, this needs to be fixed.
Expects https error code on tag not existing, receives empty json list with no https error code.
Logging should be enhanced to clearly show:
-Connection issues
-Bad credentials
-Bad JSON file
-incorrect tag name in JSON file
Fix any outdated documentation such as the stale reference to the logger lib
Point source should be implemented
Improve the error handling when sending configurations and/or payloads to OSIsoft.
Currently, if an error message is contained in a response from OSIsoft, there is no indication to the user.
For example, if a type definition error occurs, the connector continues to function as usual, despite data not being able to be processed by the server. An error message should be displayed, and either the connector should be paused until it's fixed or shut down altogether.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.