Conversation
|
@yordis wdyt of this as an idea? |
| Use `:conceal` request option to conceal sensitive requests. | ||
|
|
||
| ``` | ||
| Tesla.get(client, opts: [conceal: true]]) |
There was a problem hiding this comment.
Overall, I like the idea, the only feedback is about documentation.
We should document in one place all the "reserved" options that have a given intent.
I like it!
|
Recently, I had to send the data somehow, I ended up doing the following: defmodule Umbrella.Tesla.Logger do
def log_level(%Tesla.Env{status: status}) when status in 400..499, do: :warning
def log_level(_env), do: :default
def log_formatter(req, {:error, reason}, time) do
%{
time: time,
method: upper_case_method(req),
url: req.url,
path: req.opts[:req_url],
req_body: log_env_body(req),
reason: inspect(reason)
}
end
def log_formatter(req, {:ok, resp}, time) do
%{
time: time,
status: resp.status,
method: upper_case_method(req),
url: req.url,
path: req.opts[:req_url],
req_body: log_env_body(req),
resp_body: log_env_body(resp)
}
end
defp log_env_body(%Tesla.Env{status: status} = env) when status >= 400 do
inspect(env.body)
end
defp log_env_body(_), do: "[REDACTED]"
defp upper_case_method(%Tesla.Env{} = env) do
env.method
|> to_string()
|> String.upcase()
end
endAs long as the metadata is under a given key Being said, the ultimate way to deal with this is to simple allow the user to do I think it was a misdirection to call |
2bca420 to
fe7207c
Compare
|
@teamon do you mind rebasing? I am still unsure about the feature and the final version |
wip, testing in progress