お世話になります。
現在、弊社で使用しているGoogleアナリティクスのタグが、
「非同期ga.js」と「analytics.js」の2種類使用しています。
2種類のタグから「gtag.js」に設定を変更を検討しております。
タグマネージャーには、非同期ga.jsで使用している記述がありました。
書き方が理解しきれていないのですが、
どのように「gtag.js」の記述にすればいいでしょうか。
▼▼タグマネージャーの記述(一部タグ設定)▼▼
//以下、GA実行部分
//グローバル変数を、_gaq,_gatのみに
//utma-cookieの生成を優先するために、dummyのevent(直帰率に影響なし)を発行後、pageviewを発行
//error時には、errorイベントを発行
//カスタム変数1には、ユーザースコープでUserユーザー別(匿名)をキー、未購入者/既購入者を値
//既購入者には、サンユーページで Cookie、IsCustomerにYesを格納して判別
//カスタム変数2には、ページスコープでユーザー別(匿名)をキー、時刻・訪問回数を値
//カスタム変数3には、セッションスコープでユーザー別(匿名)をキー、訪問回数を値
    var _gaq = _gaq || [];
    _gaq.push(['b._setAccount', 'UA-●●●●●●-●']);//使用するweb-property-IDを入力
    _gaq.push(['b._setDomainName', '●●●●.jp']);//ドメイン
    _gaq.push(['b._setAllowLinker', true]);
    _gaq.push(['b._addIgnoredRef', 'www.swallow.jp']); 
    _gaq.push(['b._addOrganic','nifty','q']);
    _gaq.push(['b._addOrganic','infoseek','qt']);
    _gaq.push(['b._addOrganic','livedoor-search.naver.jp','q']);
    _gaq.push(['b._addOrganic','naver.jp','q']);
    _gaq.push(['b._addOrganic','so-net','query']);
    _gaq.push(['b._addOrganic','fresheye','kw']);
    _gaq.push(['b._addOrganic','auone','q']);
    _gaq.push(['b._addOrganic','ocnsearch', 'MT']);
    _gaq.push(['b._addOrganic','search.ecnavi.jp','Keywords']);
    _gaq.push(['b._addOrganic','hi-ho', 'MT']);
    _gaq.push(['b._addOrganic','odn','search']);
    _gaq.push(['b._addOrganic','excite','search']);
    _gaq.push(['b._addOrganic','asahi','Keywords']);
    _gaq.push(['b._addOrganic','luna', 'q']);
    _gaq.push(['b._addOrganic','lunascape','p']);
    _gaq.push(['b._addOrganic','hatena', 'word']);
    _gaq.push(['b._addOrganic','mixi', 'keyword']);
    _gaq.push(['b._addOrganic','search.smt.docomo.ne.jp', 'search_box']);
    _gaq.push(['b._trackEvent',"dummy","dummy","",0,true]);//utma-Cookie作成・更新のため,直帰率には影響与えません
    //以下、eventTrack作成のタイミングをみるため、少し時間を起きます。20ms。なくても良いかもしれません。
    var fun = function(){
        //匿名ユーザー固有番号取得
        var get_user_id = function(){
            var utma = document.cookie.match(/__utma\=([^;] )/);
            if(!utma) return "not-get"
            if(!utma[1] || utma[1].split(".").length!=6) return "not-good"
            return utma[1].split(".")[1]
        }
        //セッション番号取得
        var get_session_num = function(){
            var utma = document.cookie.match(/__utma\=([^;] )/);
            if(!utma) return "not-get"
            if(!utma[1] || utma[1].split(".").length!=6) return "not-good"
            return utma[1].split(".")[5]
        }
        //現在時刻取得(yyyy/mm/dd hh:mm:ss)
        var get_time_now = function(){
            //utility関数:先頭ゼロ付加
            function padZero(num) {
                var result;
                if (num < 10) {
	            result = "0"   num;
                }else{
	            result = ""   num;
                }
                return result;
            }
            var now = new Date();
            return now.getFullYear()   "/"   padZero(now.getMonth()   1)   
	        "/"   padZero(now.getDate())   "_"   padZero(now.getHours())   ":"   
	        padZero(now.getMinutes())   ":"   padZero(now.getSeconds())
        }
//__utmv Cookieをマクロから変数に取り込み。
if ({{Cookie__utmv}} != undefined){
       var cookie_v = {{Cookie__utmv}};
     }else{
           cookie_v= "none";
     }
        setTimeout(function(){
            try{
               if(cookie_v.indexOf("IsMember=Member") == -1) _gaq.push(['b._setCustomVar', 5, "IsMember", "Non_Member", 1]);
               if(cookie_v.indexOf("=Customer") == -1) _gaq.push(['b._setCustomVar', 1, get_user_id(), "Non_Customer", 1]);
                _gaq.push(['b._setCustomVar', 2, get_user_id(), get_time_now()   "_"   get_session_num(), 3]);
                _gaq.push(['b._setCustomVar', 3, get_user_id(), get_session_num(), 2]);               
            }catch(e){
                _gaq.push(['b._trackEvent','error',e.message,'',0,true]);
            }finally{
                _gaq.push(['b._trackPageview']);
            }
        },20);
    }
    _gaq.push(fun);    
(function() {
    var ga = document.createElement('script'); ga.type = 'text/javascript'; ga.async = true;
    ga.src = ('https:' == document.location.protocol ? '
https://ssl' : '
http://www')   '.google-analytics.com/ga.js';
    var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(ga, s);
})();