2019.06.14

実労働時間と勤怠システムの乖離を無くすために当社が行っていること

働き方改革が進んでいる昨今、サービス残業や長時間労働に関する取り締まりが厳しくなっています。企業は勤怠管理システムの導入を行っていますが、システムが正しく機能するためには従業員が正確に実労働時間を入力する必要があります。
しかしながら、勤怠システムの打刻時間と実際の労働時間に乖離が発生してしまうこともあるのではないでしょうか?

労務管理を行うために当社が実施していること

当社では、労務管理の徹底を行うため、業務用パソコンにクライアント運用管理ソフトウェア(以下 資産管理ソフト)を導入しています。資産管理ソフトによりパソコンの起動時間や停止時間を収集することで、パソコンの操作時間と勤怠システムに登録される出退勤の時間に乖離がないことをチェックができるようになっており、Amazon WorkSpacesも業務用パソコン同様に乖離チェック対象です。しかし、Amazon WorkSpacesをALWAYS_ONで利用している場合、パソコンの起動・停止という概念がなく、資産管理ソフトをAmazon WorkSpacesに導入しても、操作時間の収集ができないことから、人事部門より「何か手立てはないか」と相談を受けていました。

そこで、Amazon WorkSpacesへのログオン、ログオフ情報を収集できるようにすることで、資産管理ソフトで確認している起動時間や停止時間に近い情報が収集できるようになるのではないかと考えました。

実際に行っている仕組みをご紹介

今回作成したプログラムは下図のように3つのLambdaで構成されています。
Amazon WorkSpacesのログオン情報の収集には、CloudWatch EventのAmazon WorkSpaces へのAccessイベントをトリガーにDynamoDBへレコードを出力しています。一方ログオフは、Amazon WorkSpacesのUserConnectedメトリックスを定期的に取得し、1→0に変わるタイミングをログオフとして記録しDynamoDBにレコードを出力しています。DynamoDBに出力されたデータはS3に保存され、労働基準法の定めにより3年間保存される仕組みとしました。

処置ダイアグラムを表した画像

DynamoDBのテーブルレイアウト

項目 設定値 備考
プライマリキー ID -
属性 イベント時間 ログオン/ログオフ時間
ユーザ名 -
Amazon WorkSpaces ID -
項目タイプ Connected/Disconnected
クライアントIP ログイン元IPアドレス
クライアントプラットフォーム ログイン元端末情報
TTL 有効日時 2日間保存

S3に保存されるログオン、ログオフCSVファイルのレコードフォーマット

イベント時刻 アクション ユーザ名 Amazon WorkSpaces ID ログイン元IP ログイン端末
(例)2019/02/01 9:45 Connected Horikoshi Ws-978jsadf xxx.xxx.xxx.xxx Windows
(例)2019/02/01 19:45 Disconnected Horikoshi Ws-978jsadf xxx.xxx.xxx.xxx Windows

S3バケット

Amazon S3バケットの構成を表した画像

管理のしやすさも考慮し、Amazon Athenaも使ってみた

上記の仕組みに加え、管理者がS3に保存されたログイン・ログオフデータを容易に検索できるようにするため、Amazon Athenaを使用した仕組みも作りました。

処置ダイアグラムを表した画像

まずは、Athenaのクエリエディタ画面にアクセスして、以下のようにテーブル作成のクエリを実行します。

クエリの実行画面の画像

LOCATION句にログが格納されているS3パスを指定することで、クエリ実行時に指定したパス内の全てのファイルが読み込まれデータとして処理されます。テーブルの作成に成功すると、以下のようにテーブルの情報が表示されます。

クエリの実行画面にテーブル情報が表示されている画像

次に、作成したテーブルからデータを取得してみます。

作成したテーブルから取得したデータが表示されている画像

複数CSVファイルにまたがってデータを取得できていることが確認できます。

最後に、ユーザと日付(2019/2/1)を指定してデータを取得してみます。

ユーザと日付を指定してデータを取得した結果が表示されている画面

特定ユーザの2019/2/1のデータのみセレクトできました!
このように、Athenaを使うことで大量に出力されるログファイルの中から見たい情報を簡単にピックアップすることが可能です。

いかがでしたでしょうか?
今回ご紹介した仕組みは比較的簡単に作成することができるので、参考にしていただけたら嬉しいです。今の会社において適切な対策や仕組みづくりを考え、進めていくことで、企業はもちろん、従業員全員が働きやすい環境をつくってもらえたらと思います。

関連サービス

おすすめ記事

導入のお問い合わせはこちら

AWSやAmazon WorkSpacesの導入から接続回線、運用・保守まで何でもお任せください。

お問い合わせ

TOPへ戻る