redash를 운영하는 데 좀 더 유용한 이야기

10322 단어 redash
※ redash의 버전은 4.0.1 입니다.

redash 배경을 검정색으로 설정 (chrome)



  • Care your Eyes 에서 Chrome 확장 프로그램 추가. 지금은 redash의 장시간 작업에는 필수가 되었습니다.


  • query 관리편


  • query명의 선두에 반드시 데이터 소스명을 기재
  • 등록 된 데이터 소스가 여러 개 있기 때문에

  • 정기 실행중인 조회 관리
  • 데이터 소스에 redash DB를 등록하고 아래의 query 등록 (postgre)

  • SELECT q.id as query_ID
           ,CASE
               WHEN q.schedule LIKE '%:%' THEN q.schedule
               ELSE CASE
                        WHEN trunc(to_number(q.schedule, '9999999')/60, 0) < 60 THEN trunc(to_number(q.schedule, '9999999')/60, 0) || '分'
                        ELSE CASE
                                 WHEN trunc(to_number(q.schedule, '9999999')/60, 0) < 1440 THEN trunc(to_number(q.schedule, '9999999')/60/60, 0) || '時間'
                                 ELSE trunc(to_number(q.schedule, '9999999')/60/60/24, 0) || '日'
                             END
                    END
           END AS 実行間隔 
           ,q.name AS タイトル 
           ,ds.name AS データソース名 
           ,qr.runtime AS Runtime 
           ,qr.retrieved_at AS 最終実行日時
    FROM queries q
    LEFT JOIN data_sources ds ON q.data_source_id = ds.id
    LEFT JOIN query_results qr ON q.query_hash = qr.query_hash
    AND qr.retrieved_at =
      (SELECT max(retrieved_at)
       FROM query_results
       WHERE q.query_hash = query_results.query_hash)
    WHERE schedule != ''
    ORDER BY q.id ASC
    
    
  • 이런 식으로 일람으로 볼 수 있도록 해 두면 알기 쉽다


  • 사용자 관리편



    사용자 확인 (organizations 설정을하는 사람에게 유용 할 수 있음)


  • 사용자의 작성 권한이 다른 부서에도 있어 게다가 삭제 기능 자체가 없기 때문에 상당히 힘든
  • 생성 규칙이있는 것처럼 보이지 않습니다

  • 게다가 계정을 만들어도 비밀번호 설정조차하지 않은 사람이 얼른
  • SELECT u.id,
           u.name,
           u.email,
          case when u.password_hash is not null then '<div class="bg-success text-center">発行済</div>' else '<div class="bg-danger text-center">未発行</div>' end as pass発行,
           u.groups,
           o.name as org_name,
           o.slug,
           u2.name as 作成者
    FROM users u
    LEFT JOIN organizations o ON o.id = u.org_id
    LEFT JOIN events e ON e.object_id = cast(u.id as text)
    AND e.action = 'create'
    AND e.object_type = 'user'
    LEFT JOIN users u2 ON u2.id = e.user_id
    ORDER BY u.id DESC
    
  • ※organizations를 설정하지 않은 사람은 여기서 leftjoin 하지 않아도 된다.
  • 위의 실행을 통해 누가 누구의 계정을 만들었는지와 암호를 설정했는지 알 수 있습니다.
  • 좋은 웹페이지 즐겨찾기