Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

No .tdms files start on trigger. #73

Closed
johndevera opened this issue Jul 13, 2023 · 11 comments
Closed

No .tdms files start on trigger. #73

johndevera opened this issue Jul 13, 2023 · 11 comments
Labels
bug Something isn't working

Comments

@johndevera
Copy link

Describe the bug
No .tdms files are generated after setting up EDL.
Does EDL work on Target running Linux x64?

To Reproduce
Steps to reproduce the behavior:

  • Set up EDL with 5 channels
  • Deploy
  • Set log_trigger to 1

Expected behavior
Files should start appearing in folder and a new file should get created and previous file closed every 30sec.

Screenshots
Embedded Data Logger Config
embedded_data_logger_config

Veristand Controller Specification
controller_specification

Desktop (please complete the following information):

  • OS: Windows 11
  • Target OS: Linux x64
  • Veristand 2023 Q1
@johndevera johndevera added the bug Something isn't working label Jul 13, 2023
@jacobson3
Copy link

What are the status channels reading (the ones under data_log) when you're running this system definition? Also, is there anything relevant printed to the console?

I just set up a similar test with VeriStand 2023Q1 running on an 8861 running LinuxRT x64 and everything seemed to be working as expected. I copied all of the configurations in the images and just logged 5 random system channels. When I deployed the system definition I opened an SSH session and navigated to /C/test_folder/stream_data and just ran an ls -l to see that files were being created and data was being logged (I was really just looking at file size).

@hongbo-miao
Copy link

hongbo-miao commented Jul 13, 2023

Thanks @jacobson3 ! I am working @johndevera , nice to meet you!

Just confirm the log is expected to save in the host machine instead of target machine, right?
Another question, is there a link how to check this "Embedded Data Logger Custom Device" own log, just for debugging purpose, thanks! 😃

@jacobson3
Copy link

The log will be saved on the target LinuxRT system.

I'm not sure what you mean by "Embedded Data Logger Custom Device own log". Whatever VeriStand prints to the console during operation can also be read from /dev/vcs, maybe that's what you're looking for.

@hongbo-miao
Copy link

hongbo-miao commented Jul 13, 2023

Thanks @jacobson3 !

Q1

For this Log File Directory, if it is on target Linux, when I input Linux folder path

/home/admin/stream

image

and press enter, it automatically changes to

home:\admin\stream

image

In our case, if the log saves in the target Linux system, I am expecting it uses a Linux folder path. However, this formatted folder path is using Windows format.

Q2

When I say "Embedded Data Logger Custom Device own log", I just want to check its own log. For example, if it tries to write to a folder path without access, I am expecting it fails / crashes with some log printed somewhere, so that I can check what causes "Embedded Data Logger" not working properly.

@buckd
Copy link
Collaborator

buckd commented Jul 13, 2023

it automatically changes to home:\admin\stream

This bug is captured in #24. The custom device uses LabVIEW controls to construct the UI for configuration. LabVIEW path controls automatically convert paths to display valid paths on the current operating system. Because the configuration is running on Windows, the control converts what is entered to a LabVIEW path.

@jacobson3
Copy link

For question 2, /dev/vcs is probably where it prints errors. I don't think the custom device keeps a separate log so any errors should be passed back up to the VeriStand engine and end up in /dev/vcs.

You'll probably still want to look at the status channels as the custom device may be in a state where it won't log anything but it doesn't consider it an error.

@johndevera
Copy link
Author

@jacobson3 @buckd thanks for your replies!

@jacobson3 Can you confirm, is your host machine running windows? Your first reply seems like the host machine is windows and target is linux. Also, this is our output of /dev/vcs

image

@buckd Is that just a UI bug? You mention in #24 that its "difficult". Does it in fact record files on the linux target when your host machine is windows?
We tried specifying the record folder on the linux system as /home/admin/stream/ and we still did not see any .tdms.

@jacobson3
Copy link

Yes, the host is my Windows 10 laptop and the target is an 8861 running LinuxRT.

@rtzoeller
Copy link
Contributor

We tried specifying the record folder on the linux system as /home/admin/stream/ and we still did not see any .tdms.

I think you're just hitting an unfortunate quirk at the intersection of how LabVIEW runs, the default users on NILRT, and Linux filesystem permissions.

LabVIEW and therefore VeriStand run as lvuser, and can't write to /home/admin unless you modify the permissions. I'm not sure we do a good job reporting errors on this today.

Can you try writing to /home/lvuser/ instead?

@johndevera
Copy link
Author

Thanks @rtzoeller I tried writing it to /home/lvuser but it didn't work. See how the path got entered in the EDL
image

@johndevera
Copy link
Author

johndevera commented Jul 19, 2023

@jacobson3 @rtzoeller @buckd Thanks for your help!

The files are in fact at /C/test_folder/stream_data
Somehow when i viewed it before i didn't see the C folder.

Closing this ticket.
I still think it would be better to specify a linux path if it is being save to linux

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working
Projects
None yet
Development

No branches or pull requests

5 participants