on a JMeter test plan, I have too many HTTP requests. One of these creates a new session every time when clicking the create button.
How do I store that session_id in a CSV file for further operation?
on a JMeter test plan, I have too many HTTP requests. One of these creates a new session every time when clicking the create button.
How do I store that session_id in a CSV file for further operation?
Given you have already extracted this session_id using the relevant JMeter PostProcessor you can save its value into a file using JSR223 PostProcessor and the code like:
new File('/path/to/your/file.csv') << vars.get('session_id') << System.getProperty('line.separator')
Make sure you select groovy in the "Language" dropdown and tick Cache compiled script if available box. 
If ${session_id} variable exists - JMeter will store its value(s) in the file provided. 
There are a few ways to do it. The most useful is RegExp post processor. It could be found here as it is shown in the following image. Place it under Request that returns needed data in response.
The RegExp catches groups and stores them under different variable names, based on Name of Create Variable. The values could be searched in different areas of Response, as it is demonstrated in the image, we can search in headers, redirected pages, main bodies and so on. The Stored variable could be re-used in other HTTP Requests or processors (Post and Pre) through ${VariableName} (e.g. ${JSESSION_ID})
DEBUG: If a value is not found, the DEBUG in cooperation with Tree Results Viewer can help. Here they are :
The general script structure might look like :
Add BeanShell PostProcessor. Copy, paste the below code (with your modifications for path and var).
var = vars.get("your_variable_name");
FileWriter fstream = new FileWriter("/your/desired/path/results.csv", true);
BufferedWriter out = new BufferedWriter(fstream);
out.write(var);
out.write(System.getProperty("line.separator"));
out.close();
fstream.close();