Re:dash API를 사용하여 Re:dash로 이동
개요
옛날 혼잡한 Re:dash에서 새로운 Re:dash 환경으로 쿼리를 이사한다.
Re:dash를 혼잡한 결과 다양한 문제에 직면했기 때문에 새롭게 Re:dash 환경을 시작해 이사하기로 결정했다.
기존 환경을 최선을 다해 좋은 느낌으로 만드는 것도 생각할 수 있지만 이용자가 적다(나와 디렉터 1명만)&query 이외 거기까지 이용하지 않은 배경이 있어, 새로운 환경 세워 이사하는 것이 빠른 것은 라고 하는 시도를 했습니다.
아티팩트
깨달은 것
구 환경의 query를 모두 취득해, 이용중의 것만 새로운 환경에 모두 임포트 한다.
본가의 문서는 GET계는 알기 쉽습니다만 등록계는 대부분 고전했습니다.
포인트만
API 키 유형
Re:dash의 인증에는 User API Key
와 Query API Key
의 종류가 있습니다.Query API Key
는 그 쿼리만으로 한정된 권한의 API Key가 되어 있어 본가의 문서에서는 가능한 한 이쪽을 사용하도록(듯이) 추천하고 있습니다.
=> 이번은 Query의 전건 취득을 실시하는 것과 등록을 실시하기 위해 User API Key
를 이용합니다. 관리 화면에서 쉽게 Regenerate 할 수 있으므로 다른 곳에서 이용하지 않으면 실행 후 Regenerate 해 두면 좋을지도 모릅니다.
인증 방식
공식 문서에서는 query parameter로 api_key를 설정하는 방법이 쓰여져 있습니다.
$ curl https://{your redash domain}/api/queries?api_key={your user api key}
이것과는 다른 방식으로 Authorization Header에 넣어 검증하는 방식도 있는 것 같습니다.
query parameter로 건네주는 것보다 이쪽이 코드가 심플해지므로 이번은 이쪽을 채용.
$ curl -H "Authorization: Key {your user api key}" https://{your redash domain}/api/queries
그 밖에도 request.view_args.get("token")
로 건네주는 방법이 있는 것 같고, Flask의 기능인 것 같습니다만 제대로 확인하고 있지 않습니다. 그렇다고는 해도 엔드포인트에 api key 넣는 수법답게 헤더에 넣는 편이 심플할까라고 생각해서 과시하지 않습니다.
cf : htps : // 기주 b. 이 m/게 t다다 sh/레다 sh/bぉb/2992c382d12바0db23dd1886b38c00c0d8b67cc/레다 sh/맞다 치치치온/__아니 t__. py#L142-L154
post /api/queries가 통과하지 못했습니다...
에러도 거기까지 상세가 상세하게 돌아오지 않기 때문에 비교적 손 탐구로 해 왔습니다.
=> Re:dash의 관리 화면에서 요청 정보를 참고로 정보를 좁혀 가면 알기 쉽다고 생각합니다.
이번에는 이하의 파라미터를 던지기로 했습니다.
깨달은 것
구 환경의 query를 모두 취득해, 이용중의 것만 새로운 환경에 모두 임포트 한다.
본가의 문서는 GET계는 알기 쉽습니다만 등록계는 대부분 고전했습니다.
포인트만
API 키 유형
Re:dash의 인증에는 User API Key
와 Query API Key
의 종류가 있습니다.Query API Key
는 그 쿼리만으로 한정된 권한의 API Key가 되어 있어 본가의 문서에서는 가능한 한 이쪽을 사용하도록(듯이) 추천하고 있습니다.
=> 이번은 Query의 전건 취득을 실시하는 것과 등록을 실시하기 위해 User API Key
를 이용합니다. 관리 화면에서 쉽게 Regenerate 할 수 있으므로 다른 곳에서 이용하지 않으면 실행 후 Regenerate 해 두면 좋을지도 모릅니다.
인증 방식
공식 문서에서는 query parameter로 api_key를 설정하는 방법이 쓰여져 있습니다.
$ curl https://{your redash domain}/api/queries?api_key={your user api key}
이것과는 다른 방식으로 Authorization Header에 넣어 검증하는 방식도 있는 것 같습니다.
query parameter로 건네주는 것보다 이쪽이 코드가 심플해지므로 이번은 이쪽을 채용.
$ curl -H "Authorization: Key {your user api key}" https://{your redash domain}/api/queries
그 밖에도 request.view_args.get("token")
로 건네주는 방법이 있는 것 같고, Flask의 기능인 것 같습니다만 제대로 확인하고 있지 않습니다. 그렇다고는 해도 엔드포인트에 api key 넣는 수법답게 헤더에 넣는 편이 심플할까라고 생각해서 과시하지 않습니다.
cf : htps : // 기주 b. 이 m/게 t다다 sh/레다 sh/bぉb/2992c382d12바0db23dd1886b38c00c0d8b67cc/레다 sh/맞다 치치치온/__아니 t__. py#L142-L154
post /api/queries가 통과하지 못했습니다...
에러도 거기까지 상세가 상세하게 돌아오지 않기 때문에 비교적 손 탐구로 해 왔습니다.
=> Re:dash의 관리 화면에서 요청 정보를 참고로 정보를 좁혀 가면 알기 쉽다고 생각합니다.
이번에는 이하의 파라미터를 던지기로 했습니다.
API 키 유형
Re:dash의 인증에는
User API Key
와 Query API Key
의 종류가 있습니다.Query API Key
는 그 쿼리만으로 한정된 권한의 API Key가 되어 있어 본가의 문서에서는 가능한 한 이쪽을 사용하도록(듯이) 추천하고 있습니다.=> 이번은 Query의 전건 취득을 실시하는 것과 등록을 실시하기 위해
User API Key
를 이용합니다. 관리 화면에서 쉽게 Regenerate 할 수 있으므로 다른 곳에서 이용하지 않으면 실행 후 Regenerate 해 두면 좋을지도 모릅니다.인증 방식
공식 문서에서는 query parameter로 api_key를 설정하는 방법이 쓰여져 있습니다.
$ curl https://{your redash domain}/api/queries?api_key={your user api key}
이것과는 다른 방식으로 Authorization Header에 넣어 검증하는 방식도 있는 것 같습니다.
query parameter로 건네주는 것보다 이쪽이 코드가 심플해지므로 이번은 이쪽을 채용.
$ curl -H "Authorization: Key {your user api key}" https://{your redash domain}/api/queries
그 밖에도
request.view_args.get("token")
로 건네주는 방법이 있는 것 같고, Flask의 기능인 것 같습니다만 제대로 확인하고 있지 않습니다. 그렇다고는 해도 엔드포인트에 api key 넣는 수법답게 헤더에 넣는 편이 심플할까라고 생각해서 과시하지 않습니다.cf : htps : // 기주 b. 이 m/게 t다다 sh/레다 sh/bぉb/2992c382d12바0db23dd1886b38c00c0d8b67cc/레다 sh/맞다 치치치온/__아니 t__. py#L142-L154
post /api/queries가 통과하지 못했습니다...
에러도 거기까지 상세가 상세하게 돌아오지 않기 때문에 비교적 손 탐구로 해 왔습니다.
=> Re:dash의 관리 화면에서 요청 정보를 참고로 정보를 좁혀 가면 알기 쉽다고 생각합니다.
이번에는 이하의 파라미터를 던지기로 했습니다.
뒤쫓습니다만 이쪽변 보면 파라미터에 대해 쓰여졌습니다. 위의 것이 필수이고 그 이외는 optional 같네요.
htps : // 기주 b. 이 m/게 t레다 sh/레다 sh/bぉb/2992c382d12바0db23dd1886b38c00c0d8b67cc/레다 sh/단 dぇrs/쿠에리에 s. py#L330-L342
"""
Create a new query.
:<json number data_source_id: The ID of the data source this query will run on
:<json string query: Query text
:<json string name:
:<json string description:
:<json string schedule: Schedule interval, in seconds, for repeated execution of this query
:<json object options: Query options
.. _query-response-label:
.........
"""
실행 후에 모두 unpublish 상태로 이었지만 아무래도 고정으로 draft 상태가 되는 것 같습니다. .
htps : // 기주 b. 이 m/게 t레다 sh/레다 sh/bぉb/0에 1587아 0687838b934c90c2b066아아 0아아 7db0아 py#L257
Re:dash API와 싸울 때의 마음가짐
우선 전제로 공식 문서 이외의 비공식? API가 너무 많았습니다 ....
Re:dash의 API는 여기에 정리되었습니다.
htps : // 기주 b. 이 m/게 t레다 sh/레다 sh/bぉb/0에1587아0687838b934c90c2b066아에0아아7db0아f83/레다 sh/단dぇrs/아피. py
이 중에서 그런 엔드포인트를 찾아 **Resources
클래스를 특정한다.
그리고는 그 클래스로 전건 검색되어 드릴다운 되어 해당의 엔드포인트의 구현을 찾는다.
=> 대체로 코멘트에 필요한 파라미터를 기재해 줍니다.
멋진 Re:dash생명을 good luck!
참고
htps : // Reda sh. 이오 / 헬프 / 우세 r-gui / / g 라치 온 s-an d-api / api
h tps:// 퀵했다. 작은 m / 사츠키 츠카사 / MS / 18012b7 베d4 곁 C437
htps : // Reda sh. 이오 / 헬프 / 우세 r-gui / / g 라치 온 s-an d-api / api
h tps:// 퀵했다. 작은 m / 사츠키 츠카사 / MS / 18012b7 베d4 곁 C437
Reference
이 문제에 관하여(Re:dash API를 사용하여 Re:dash로 이동), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/tatematsu-k/items/0bb7f2859a2bd88f49d7텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)