defmodule FileLogger do def log_request(xml) do {{year, mon, day}, {hh, mm, ss}} = :os.timestamp |> :calendar.now_to_datetime filename = "#{year}-#{mon}-#{day}-#{hh}-#{mm}-#{ss}.log" case File.open filename, [:write] do {:ok, file} -> File.open filename, [:write] IO.binwrite file, xml File.close file filename {:error, reason} -> IO.inspect reason end end def log_response(filename, xml) do case File.open filename, [:write] do {:ok, file} -> IO.binwrite file, xml <> "\n Response: \n\n" <> xml File.close file {:error, reason} -> IO.inspect reason end end def log(request, response) do status = create_dir {{year, mon, day}, {hh, mm, ss}} = :os.timestamp |> :calendar.now_to_datetime filename = "logs/#{year}-#{mon}-#{day}-#{hh}-#{mm}-#{ss}.log" case File.open filename, [:write] do {:ok, file} -> File.open filename, [:write] IO.binwrite file, "=============Request:============== \n\n #{request} \n\n\n ============Response:===========\n\n #{response}" File.close file {:error, reason} -> IO.inspect reason end end defp create_dir, do: File.mkdir("logs") end