User info
First name | Floris |
Last name | Cockaerts |
DevOps Program
Acquired rank |
Enabler
|
Points progress |
1951
DevOps Points
|
Here are a few tips to level up your DevOps game and unlock an arsenal of perks and benefits. | |
DevOps attestation | Request your attestation ID and expiry date |
Achievements
|
Questions asked
Answers given
Hi Rodrigo, DVEs should always be running as the version of the parent element, as these do not entirely exist as separate elements server-side. However, displaying the data still requires the information...
View QuestionHi Dominique, Newtonsoft.Json is the most common way to parse to and from JSON messages, but it is still a custom library made by Newtonsoft and not part of your project by default. If you are writing...
View QuestionHi Aldrick, When performing SNMP requests using the NT_SNMP_GET call, a type specifier can be provided along with the OID. "OID:TYPE:METHOD", where TYPE and METHOD are optional. For the TYPE, there's...
View QuestionHi Rebecca, Is this button parameter supposed to set another parameter? If not, the setter="true" attribute should not be present on this parameter. It not being able to set a different parameter is probably...
View QuestionThe HTTP Sessions were implemented before RFC2616 became obsolete. As such, the assumption was made that a GET request shouldn't contain a body. For ease-of-use, the provided <Data> is automatically...
View QuestionHi Wale, This happens asynchronously, meaning both actions are being handled by different threads without synchronizing. When a parameter value is changed, it is forwarded to a queue in SLElement. Then,...
View QuestionHi Greisen, You'll need to use an SLNet call to get the alarm level, since the SLProtocol object itself gives you access to the information in the SLProtocol process, while alarms are created and stored...
View QuestionNon-ascii characters don't work well when a protocol is not Unicode. That's because the protocol expects to receive ASCII data from a device. The SLProtocol logic is built to then work entirely with ASCII...
View QuestionHi Sofia, The error message is a bit of a misnomer, and seems to indicate one of two things. Either the internal pointer to the protocol information is absent, which seems unlikely, or there is no parameter...
View QuestionHi Anna, The AddRow should work regardless of the context menu. A context menu is a parameter that elicits some behaviour in DataMiner Cube and triggers a QAction to handle the action. I believe something...
View QuestionHi Daniel, According to this stackoverflow thread, you likely need to install the Microsoft Access Database Engine 2010 Redistributable on your system.
View QuestionHi Elmaza, There's no immediate way to abort a specific thread, however, have you tried to either: Stop or restart the element? If it isn't a production system, or the impact of reloading the data...
View QuestionHi Amer, Together with Thomas, I made an IAS that handles a button press that we tested our local DMA. Maybe this can serve as an example? IAS_Button_Pressed/DOJO_1.cs at RC · FlorisCO/IAS_Button_Pressed...
View QuestionHi Ruben, Serial communication depends on trailers to know when a message has been concluded, otherwise it waits for the timeout time before sending the data to SLProtocol. Can you check if the protocol...
View QuestionGetNativeVariantForObject is a function that translates the managed (C#) objects to unmanaged (C++) objects. It's only capable of translating fundamental types like integers, strings, and arrays. Presumably...
View QuestionHi Greisen, This action (read file | DataMiner Docs) is entirely based on bytes. So the file type or extension doesn't matter, but you are going to end up with bytes that may be in a format that needs...
View QuestionHi Elvio, Although a C# Automation Script is capable of anything supported by dotNET, it may not be your best option since the data you poll still needs to end up somewhere. What is done in environments...
View QuestionHi Flavio, Exporting a standalone parameter to a function DVE should be possible while it is, as you mentioned, not possible for a regular DVE. The reasoning behind this compatibility is that alarms...
View QuestionHi Bing, First, to answer your direct questions: Yes, the feature was introduced with RN18640 in FR 9.5.13 and MR 9.6.0 (CU0) and is always active Yes, the standby agent will either not listen to...
View QuestionHi Ryan, The only limitations I'm aware of are those of the string classes themselves. These are ~2^30 characters for both C# and C++ (~1 billion UTF-16 characters). You didn't specify how large the expected...
View QuestionThe first uploaded version of a protocol will be set as production by default in one of the upcoming DataMiner versions. Data-Acquisition is still validating this feature, but you can track its progress...
View QuestionA replicated element does not execute any protocol logic. The timers are not active, the trigger will not fire. It receives parameter changes from the original element in SLProtocol, which will update...
View QuestionHi Edib, Is it possible you have a streamviewer session open on that element? From what I can tell in the code, it seems to do a check for that, but then doesn't necessarily write to the streamviewer,...
View QuestionHi Ibrahim, Process crashes can be investigated by the Create domains if you provide them with the crash dump file. I believe the procedure is to reach out to Central Operations who will do a preliminary...
View QuestionHello Rade, When an element is started, it tries to establish the TCP connections for the WebSocket interfaces defined in the protocol using the element's configuration. Since this protocol has a dozen...
View QuestionHi Aston, The NT_* notifies are an internal messaging system that actually have two separate handlers. One is SLDataMiner, and the other is SLProtocol. The problem is that each process implements the...
View QuestionHi Aldrick, There is no similar memory retention like QActions. There is a feature called memory files though: script memory files. I have not used them myself, so only have the documentation to go on...
View QuestionHello Henri, We've put this limitation on the timeout of a single command because any other interaction with the device is blocked while we wait for the reply. It is also dependent on the communication...
View QuestionHi Fransisco, There's a few topics to unpack here. First, a QAction with a table PID as trigger will be executed when that table changes, but not if those changes are made through a QAction. So in case...
View QuestionHi Jan-Terje, I do think Miguel's suggestion using CSV export and import is the easiest way to do this. But to answer your final question, yes, this is also possible using an automation script. Ideally,...
View QuestionHi Jonas, The AlarmEventMessage itself does not say when it is cleared, it's the AlarmEventMessage that has a cleared/normal state that will have cleared the alarm. So you grab the timestamp of that message...
View QuestionAn RTE in SLProtocol.exe is oftentimes linked to calls with one or more of the following processes: SLScripting SLSNMPManager SLPort SLElement Taking dumps automatically on these errors may help...
View QuestionHi Daniel, There are several ways an element can go into time-out, have you considered these: If the last request-response in a poll cycle does not receive the expected response, the element will go...
View QuestionHi Piotr, Although elements can be configured to be available in the SLSNMPAgent (cfr. Enabling_the_virtual_SNMP_agent_of_an_element), this option isn't available in the UI for services or enhanced services....
View QuestionHi Ryan, The IP stated in the notice should tell you the source of the trap. To have a better indication of why the trap is considered incorrect, there should be a log statement in the SLSNMPManager logging...
View QuestionHi Garry, DataMiner processes | DataMiner Docs seems like a comprehensive list of the DataMiner processes. Regarding the SLProtocol and SLPort processes, we have created pools of certain processes to...
View QuestionAfter investigating together with Matej, we had to come to the unfortunate conclusion that dynamic IP for smart-serial connections is not supported at the time of writing (version 10.3.8). I don't see...
View QuestionHi Ajdin, I have to make an edit to the original response, since we just discovered a quirk in SLSNMPManager that we weren't aware of. SLSNMPManager needs to parse the received bytes to appropriate types,...
View QuestionHi Michiel, I've pushed an example to github: DisabledWhenPressed The solution is to call Show(false); in your dialog class whenever you want the visuals to get updated, but haven't finished processing...
View QuestionHi Alberto, I don't believe the current syntax allows you to define multiple interfaces that share some fields. There are polling mechanisms like multithreaded timers, dynamic polling, and raw SNMP polling...
View QuestionHi Alberto, This seems to be a quirk of both Windows, and the driver. Namely, when polling the OIDs for services on the host, Windows only replies with the active services. This results in the Services...
View QuestionHi Gerwin, In the following script, I was able to add text fields by pressing a button: IAS_Button_Pressed/DOJO_1/DOJO_1.cs at RC · FlorisCO/IAS_Button_Pressed · GitHub Not sure if the locking is...
View QuestionI'm not sure if this is still in play, but protocol versions had to be validated before they would be allowed to be downloaded through the cube downloader. Checking the internal records, that flag hasn't...
View QuestionHi Andrea, A connector can only set the default retry attempts for the element creation wizard per connection (see PortSettings>Retries>DefaultValue). A connector can not overrule the configured...
View QuestionThis depends on the parameter's <Interprete> definition, which can be different from the <Display> definition. For double type parameters, we round the amount of decimals to 6 by default, and...
View QuestionHi Filiep, I'd just like to add that function DVEs and regular DVEs actually largely have the same code path, but need different "flags" to be checked. There are some exceptions though, like the way DCF...
View QuestionHi Greisen, Since you mentioned your xml syntax, but did not include the syntax for your groups and actions, did you take the connection attribute into account? As shown in the first part of this doc...
View QuestionHi Trong, Unfortunately not, it is only capable of setting the parameter when it does not have a saved value at the start of the element. Shadowing another parameter is possible with either copy actions...
View QuestionHi David, It looks like the documentation is not complete in describing how to use the state column. Only when setting all rows in a single call with either FillArray, SetColumns, FillArrayWithColumn...
View QuestionHi Zhing, At some point your messages will not be processed concurrently. It's already unlikely that they'll arrive at exactly the same time through the wire and UDP socket, I'm pretty sure that SLSNMPManager...
View QuestionHi Geovanny, Please remember that SLScripting is a 32-bit process and is limited to 4GB of memory. Consider the amount of memory you need to process your responses, assuming you have the original response...
View QuestionHi Sidddique, Let's try to separate the parsing from the visualization to isolate potential problems. For the best visualization, use the following parameter options: options attribute | DataMiner Docs,...
View QuestionHi Kawssar, This is currently not part of the CSV file exporter, and doesn't seem like that would be the intent either. Just like DELT packages, it can be used to edit or recreate elements with a certain...
View QuestionHi Mark, It looks like the lines option is only applicable to the read parameter at the moment. Multiline parameters can be displayed when the data is received through any other means, like polling or...
View QuestionHi Bing, Yes, if the SNMPTrap process is running while the DMA starts, then SLSNMPManager will attempt to stop it to take port 162. Although I could find references to the SNMPTrap process being stopped...
View QuestionHi Ruben, We always try to maintain the integrity of the data by using the necessary locking in our server code while trying to keep parallelization at a maximum. And thus, there may be some scenarios...
View QuestionHi Julian, I believe the boundary in your body is wrong. Comparing with this page: Multipart Requests (swagger.io) you can see that the boundary is prefixed with two dashes every time it is used, and...
View QuestionHi Maximiliano, This would be done by setting the Request verb to POST, configure the url and headers accordingly, and configure a Data element to point at a parameter that can be set with the content...
View QuestionHi Brecht, I would expect them to behave the same regardless of which protocol thread they are executed on. So if you have particular cases we can investigate and improve, please send us a task with the...
View QuestionHi Trong, It sounds like you have a redundant connection, rather than connections that host separate functionality? I believe there are multiple options: Enabling redundant polling to let dataminer...
View QuestionHi Ashwini, when setting up a failover pair, you should have a virtual IP (Failover configuration in Cube). This virtual IP will point to the active DMA of the pair and can be used as the entry point...
View QuestionHi Richard, Presumably there is a mismatch with the data type the SNMP value has, and how we are interpreting. If you want to see the requests and responses, you can use a network analysing tool such...
View QuestionHi Dario, Am I correct in understanding that you have a driver with 2 connections, one HTTP (or HTTPS?) and one serial, where the latter is configured for port 22 (SSH)? Since your serial command is...
View QuestionHi Roger, The parameters have a brief description of what they are if you double-click a cell in the column you want to know more about. In short, most of these values are 5-second averages using windows...
View QuestionHi Gabriel, The documentation may have been written while reflecting on a regression test, these often have small datasets and thus, use small bulk sizes. Regarding your case, it's not clear to me if...
View QuestionHi Jeff, The closest thing to what you are asking is probably the following notify, which only works for history set parameters: NT_CLOSE_HISTORY_TREND_WINDOW (374) | DataMiner Docs To my knowledge,...
View QuestionTo expand on Laurens' response, these are the QActions currently added by server-side to the protocol (as of 10.1.12) and their trigger parameters: 900000: trigger=65015, [Reset alarms for PID] 900001:...
View QuestionHi Jens, since function elements also have a protocol.xml file that was generated through the function definition, that would be the first place to look. You say you checked the column parameter, but have...
View QuestionTo the best of my knowledge, this is not configurable. It currently supports following the virtual IP of the failover configuration, but not a user configured address. Otherwise it just relies on the default...
View QuestionHi Cristel, The length limit of a single log statement can be a hindrance in test scenarios, and perhaps a different storage location may be needed if investigation this amount of data is required, as...
View QuestionHi Tyler, I recreated the setup you provided in your post, but didn't get the error. I've pushed my resulting protocol, which was started from the DIS protocol template, to github: FlorisCO/Dojo_QActionLog...
View QuestionHi Guy, It's not easy to give a definitive answer with the data provided, but I will try to explain the internal logic and what may be going wrong. However, if the issue can't be resolved with an element...
View QuestionHi Ricaurte, A WMIQueryThread is unique for an element, so unless it's in a deadlock with another thread, there's not much impact on the rest of the system. Since this is the only thread problem you seem...
View QuestionHi Alex, My experience with SNMP keys is that these usually are not pollable OIDs, but rather a definition of how to interpret the instance part of an OID for any of the other columns. If this were a...
View QuestionHi Martin, Personally, I'm only aware of the "follow" functionality on a matrix control. However, I'm not that familiar with the router control that can be used even without a matrix control. There should...
View Question