I want to take logs of the production server and them in Jmeter to replicate real life traffic that is received on the production environment. So that I'll not be making any assumptions while running the Jmeter script.
That is easier said than done. Will you be spinning up a new virtual user for each IP address or session ID encountered? How will you handle the substitution of dynamic elements present in the log which are no longer appropriate for execution? What about elements which are cached but which do not show up in the log?
You are much better off to take the information found in the logs and process them with a tool like Splunk to build a user profile of both business processes and user load which has an objective basis for your test.
It depends on what "server" you're running.
If not - there is still an option to parse your log with Beanshell PreProcessor and change HTTP Request parameters on the fly. See Stop Making Assumptions! Learn How to Replay Your Production Traffic With JMeter article for example configuration.
If you won't be able to perform relevant JMeter setup update your question with a log part containing few requests so we could take a look