MetricFlowのhealth-checksで接続エラー[SqlClientCreationException]

# はじめに
MetricFlowのsetupでBigQueryへ接続しようと思ったら接続エラーになってしまったので解決方法を載せます。
同じエラーにハマった方の参考になれば幸いです。

発生したエラーは
```
ERROR: An error occurred when attempting to create the SqlClient
```
ログを見ると以下のエラーが出ていることがわかりました。
```
metricflow.errors.errors.SqlClientCreationException: An error occurred when attempting to create the SqlClient
```

# 解決方法

僕の場合は、config.ymlファイルの`dwh_path_to_creds`という値にHOMEディレクトリの省略記号チルダ「~」を使っていることが原因でした。
「~」ではなく「/Users/y-tsuzaki/」のようにフルパスで指定することで接続できました。


```diff_yaml
- dwh_path_to_creds: ~/.metricflow/my_gcp_service_account.json  # Provide the path to the BigQuery credential file, ignore to use ADC auth
+ dwh_path_to_creds: /Users/y-tsuzaki/.metricflow/my_gcp_service_account.json  # Provide the path to the BigQuery credential file, ignore to use ADC auth
```

ちなみに`dwh_schema`を空にしても同じエラーが出たので、もし直らない場合はこちらも確認してみてください。

### バージョン情報
```
Python 3.9.16
MetricFlow 0.140.0
pip 22.0.4
pipenv version 2023.5.19
```


# 発生したエラー詳細
```sh
❯ mf health-checks
For specifics on the health-checks, please visit https://docs.transform.co/docs/deployment/integrations/dw/dw-bigquery
⠙ 🏥 Running health checks against your data warehouse... (This should not take longer than 30s for a successful connection)
ERROR: An error occurred when attempting to create the SqlClient
Log file: /Users/y-tsuzaki/.metricflow/logs/metricflow.log
```
```:metricflow.log
2023-05-28 20:13:20,143 ERROR utils.py:230 [MainThread] - Got an exception in the exception handler.
Traceback (most recent call last):
  File "/Users/y-tsuzaki/study/try-dbt-1.5/jaffle_shop/.venv/lib/python3.9/site-packages/metricflow/cli/cli_context.py", line 82, in __initialize_sql_client
    self._sql_client = make_sql_client_from_config(self.config)
  File "/Users/y-tsuzaki/study/try-dbt-1.5/jaffle_shop/.venv/lib/python3.9/site-packages/metricflow/sql_clients/sql_utils.py", line 106, in make_sql_client_from_config
    with open(path_to_creds, "r") as cred_file:
FileNotFoundError: [Errno 2] No such file or directory: '~/.metricflow/ytsuzaki-dbt-sandbox-3d62de00818a.json'

The above exception was the direct cause of the following exception:

Traceback (most recent call last):
  File "/Users/y-tsuzaki/study/try-dbt-1.5/jaffle_shop/.venv/lib/python3.9/site-packages/metricflow/cli/cli_context.py", line 97, in run_health_checks
    return self.sql_client.health_checks(self.mf_system_schema)
  File "/Users/y-tsuzaki/study/try-dbt-1.5/jaffle_shop/.venv/lib/python3.9/site-packages/metricflow/cli/cli_context.py", line 90, in sql_client
    self.__initialize_sql_client()
  File "/Users/y-tsuzaki/study/try-dbt-1.5/jaffle_shop/.venv/lib/python3.9/site-packages/metricflow/cli/cli_context.py", line 84, in __initialize_sql_client
    raise SqlClientCreationException from e
metricflow.errors.errors.SqlClientCreationException: An error occurred when attempting to create the SqlClient

The above exception was the direct cause of the following exception:

Traceback (most recent call last):
  File "/Users/y-tsuzaki/study/try-dbt-1.5/jaffle_shop/.venv/lib/python3.9/site-packages/metricflow/cli/utils.py", line 227, in wrapper
    func(*args, **kwargs)
  File "/Users/y-tsuzaki/study/try-dbt-1.5/jaffle_shop/.venv/lib/python3.9/site-packages/metricflow/telemetry/reporter.py", line 149, in wrapped
    return func(*args, **kwargs)
  File "/Users/y-tsuzaki/study/try-dbt-1.5/jaffle_shop/.venv/lib/python3.9/site-packages/metricflow/cli/main.py", line 504, in health_checks
    res = cfg.run_health_checks()
  File "/Users/y-tsuzaki/study/try-dbt-1.5/jaffle_shop/.venv/lib/python3.9/site-packages/metricflow/cli/cli_context.py", line 99, in run_health_checks
    raise SqlClientCreationException from e
metricflow.errors.errors.SqlClientCreationException: An error occurred when attempting to create the SqlClient
```