As part of my performance testing, I need to debug the session etc. The same code is running if I remove session =>. When I add that it says there was no request sent during simulation since it is not sending any.  
 val scn1 = scenario("LaunchAction").exec{ session => 
   http("Poll report status page report")
     .get("myURL/rest/reports")
     .queryParam("applicationId", "123")          
     .queryParam("id", "1")
     .check(xpath("//status").saveAs("responseStatus"))
   session
}
I need to add few prints etc in between. Can you please provide some information?
I just started with Gatling and I had exactly the same problem. The easiest way to debug for me was the addition of the entrypoint object, which I use to start/debug tests locally by running the main method
object DebugEntrypoint {
  def main(args: Array[String]) {
    // This sets the class for the Simulation we want to run.
    val simClass = classOf[Smoke].getName
    val props = new GatlingPropertiesBuilder
    props.sourcesDirectory("./src/test/scala")
    props.binariesDirectory("./target/scala-2.10/classes")
    props.simulationClass(simClass)
    Gatling.fromMap(props.build)
  }
}
As soon as the test is being executed from here, any breakpoints I put in the simulation will pause execution during the runtime. As soon as you hit a breakpoint, you can evaluate expressions and have all other debug instruments at your bidding.
You can add another exec to it like this:
.exec(
      session => {
        val activityId = session.get("someId").asOption[String]
        println(activityId)
        session
      }
    )
This should give you the session details.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With