Jump to content


  • Posts

  • Joined

  • Last visited

  • Days Won


Everything posted by Teddy

  1. Since the reported vulnerability in log4j we have responded to several customer tickets and emails inquiring about the presence of log4j in Seeq. No recent version of Seeq (back to and including R50) either includes or uses log4j, therefore the issue does not apply to Seeq customers using recent versions of the software (your version of Seeq can be found in the lower left corner of the Seeq user interface).
  2. Yes, an admin can delete the Odata exports from the export tab in the admin panel. See screenshot below for details.
  3. If the above doesn't get you what you are looking for can you attach a screenshot with a drawing of your goal? I didn't fully understand what you were doing with the sum() aggregate at the end so the periods formula I supplied might not help with that part.
  4. I think you are looking for this. periods(3min,3min)
  5. Nate, At this time there is no way for you to change the python version on Seeq’s learn server. Your best bet would be to run your scripts locally and use SPy.login to connect to the learn server. The other option would be to convert your scripts to run python 3.8. Regards, Teddy
  6. The rows in your table are ordered by your details pane by default. You should be able to order the details pane however you want by assigning lane numbers. Changing the lane numbers of your metrics and ordering your details pane by the lane numbers should allow you to achieve your desired row order. Hope this helps, Teddy
  7. Sam, What version of Seeq are you running? The past() function is not avaible until version R51.0.0+. Regards, Teddy
  8. Adam, We had some developers look at the API calls and it looks like you get a different unit depending on the endpoint you use. We are logging a bug for this. In the mean time you can overwrite the units in Seeq using the setUnits() function in formula. Thanks for reporting this. Teddy
  9. Recently we have gotten several requests to clear an item's cache in Seeq with Seeq Data Lab (SDL). The following python script creates a function that will clear an items cache when an item's ID is given as an input. Note: this script assumes you are using SDL. # imports from seeq import sdk # Setup Items API items_api = sdk.ItemsApi(spy._login.client) # Cache clearing function def ItemCacheClearingTool(itemID): try: clearCache = items_api.clear_cache(id=itemID) except: print('Error clearing cache for item ' + itemID) Screenshot of the Jupyter Notebook used to create the function: This function can be used in for loops or applied to columns in a dataframe to clear multiple items' caches at a time.
  10. Isaac, In your case you might be able to set the max interpolation to 1 second on your input signal. If that does not work, you can use a certain signal, such as Area A Temperature to create, a similar result to the past() operator. To create a similar condition to the past() condition you can use the following formula. $AreaATemp.isvalid() Once you have that you can use it the same way the past() function was used above. Teddy
  11. There are a couple options you can take for this. The first is to completely exclude the incomplete day and the second is to exclude the data in the signal until the day is complete. Exclude the Incomplete Day This is relatively easy with the past() function in formula. This function is relatively new so older versions of Seeq may not have it. On your condition that you are aggregating over you can remove all capsules past now and any incomplete ones with the following formula. (Example using daily condition) $Daily.inside(past()) Metric created with a normal daily condition: Metric created with the clipped daily condition: Exclude the Data in the Signal Until the Day is Complete This requires you to make the same clipped condition above and then apply it directly to the signal to limit the data in the signal until the last complete day. $signal.within($ClippedCondition) Results with the Clipped Signal and the Normal Signal:
  12. Sivaji, I am not 100% sure if this is what you are looking for, but you can create a time signal from a condition. This allows you to build a condition with the manual condition tool and apply the following formula to create the time counter. timesince($condition,1h) You can then just limit the training window to that condition. If you need to extend the time counter into the future you may want to apply growend() to the condition in the time since formula above. Teddy
  13. Ben, You can probably use a moving standard deviation to find that condition. Below is an example formula. Note: you can use signal from condition too, but you may want to create a condition with the periods function so you can have better control over the moving range: $signal.aggregate(stdDev(), periods(20min,5min), middleKey()) Hope this helps. Teddy
  14. Alex, You will need to create a new one and get a new link for changes like that. Regards, Teddy
  15. Alex, I am not able to share the password of the excel file. The first two columns should be unlocked so you can add your curve data there. If you want to change the fit, you can copy the formula to another workbook or write your own. You don’t need to use the excel workbook provided if you don’t want to. It is just setup to allow you to copy and paste the cells into the formula tool and not have to worry about anything. You can follow the same formatting I did and get the same results. Note: If you do change the order of the fit you will need to change the formula syntax in Seeq to match the new order. Regards, Teddy
  16. Sivaji, Only a Seeq admin can change this setting. If you are an admin it can be changed in the configuration tab in the admin panel. Regards, Teddy
  17. Hello Tom, We do have script/plugin that will do this. However, it requires Seeq Data Lab right now and a fairly new version of Seeq. There is a feature request for this that I can link you to if you want. Regards, Teddy
  18. Felipe, That would be my recommendation but it is always good to double check with your AE. Regards, Teddy
  19. Felipe, What version of Seeq are you on? I believe this error was address in the 00.49.00 release. Regards, Teddy
  20. Brent, I would avoid using tables and transforms for this calculation. I would look towards the peakFrequency() and the rmspower() functions. They are used with the aggregate function, so they are applied to a condition. To find the peak frequency the following syntax can be used in the formula tool. $condition = periods(1h, 30min) $sampleRate = (1min) //This is the spacing for used in the sampling for the FFT $waveSignal.aggregate( fft($sampleRate).peakFrequency('min'),$condition,startKey()) Here is a screen shot of the formula tool window. For the magnitude I suggest looking at the rmsPower() function in formula. If you know the band range where you expect the peak to occur, you can use that band range and be done. However, if there is multiple places that the peak could occur you can use multiple rmsPower() functions and add them together or take the maximum of them. If you are planning on taking the maximum you will want to make sure that you are using the same size band for each rmsPower() calculation so that the comparisons are equivalent. The example syntax below can be used to fine the maximum rms power of a set of peaks. $condition = periods(1h, 30min) $sampleRate = (1min) $peak1=$waveSignal.aggregate( fft($sampleRate).rmsPower(4.5min,5.5min),$condition,startKey()).toStep() $peak2=$waveSignal.aggregate( fft($sampleRate).rmsPower(9.5min,10.5min),$condition,startKey()).toStep() $peak3=$waveSignal.aggregate( fft($sampleRate).rmsPower(24.5min,25.5min),$condition,startKey()).toStep() // you will need to pick ranges and a sample rate that makes sense for your process $peak1.max($peak2).max($peak3).toStep() Below is a screen shot of the formula setup. Note: if you want to add the peaks instead of finding the max. You would just add the peaks instead of using the max function. Final screenshot. Hope this helps. Teddy
  21. At this time this feature is not available. Most people use already existing notifications like Lindsey said. Teddy
  22. Felix, Since datalab gives you full access to python you can use a python library to send emails. smtplib is an example of one of the these libraries. I am sure there are other libraries out there that will do something similar. Regards, Teddy
  23. It would be possible to shorten the formula by using the following syntax. $condition.toSignal('Max').toNumber().toStep(1week).within($condition) Note: Depending on the format of the property using toNumber() may not be necessary so it could be removed as well. $condition.toSignal('Max').toStep(1week).within($condition) Hope this helps, Teddy
  24. Hello Felix, You are correct that would be the point when data or calculation becomes uncertain. Teddy
  • Create New...