Skip to content

Instantly share code, notes, and snippets.

View ryanschuhler's full-sized avatar

Ryan Schuhler ryanschuhler

View GitHub Profile
body { background: #202020; color: #f8f8f2; }
a { color: #bd93f9; }
a:link, a:visited { color: #bd93f9; }
a:hover, a:active, a:focus { color: #8be9fd; }
hr { border-bottom: 1px solid #44475a; border-top: 1px solid #202020; }
[user]
name = ryanschuhler
email = [email protected]
[credential]
helper = cache --timeout=7200
[alias]
co = checkout
cb = checkout -b
br = branch
st = status
alias ~='cd ~'
alias ..='cd ..'
alias add-alias='s nano ~/.bash_aliases'
alias cax='chmod a+x'
alias cdls='cd $1 && ls'
alias check='afs && git sfm'
alias cl='clear'
alias del='rm -rf'
alias gri='git rebase --interactive HEAD~10'
alias hunter='pkill -9 -f catalina'
@ryanschuhler
ryanschuhler / user_metrics.txt
Last active September 13, 2016 17:24
User Metrics
Per User Metrics
- session
- duration
- source
- path (first page, all pages in between, last page)
- number of pages
- individual page metrics
- time on pages
- goals achieved/things clicked
- previous and next page
LogFormat "%h %l %u %t %m %f %>s %b \"%{Referer}i\" \"%{User-Agent}i\" \"%U\" \"%q\" %T %D %{ANONYMOUS_USER_ID}C %{JSESSIONID}C %{hubspotutk}C %{OSB_USER_ID}C %{OSB_COMANY_ID}C” liferay
match => { "message" => "%{IPORHOST:client_ip} (?:%{WORD:remote_log_name}|-) (?:%{WORD:remote_user_id}|-) \[%{HTTPDATE:timestamp}\] %{WORD:request_method}%{GREEDYDATA:file_name} %{NUMBER:request_status} (?:%{NUMBER:bytes:int}|-) \"(?:%{DATA:referrer}|-)\" \"(?:%{DATA:user_agent}|-)\" \"(?:%{DATA:relative_path}|-)\" \"(?:%{DATA:query_string}|-)\" %{NUMBER:time_in_seconds:int} %{NUMBER:time_in_micro_seconds:int}” }
- httpd.conf (on all nodes)
- (old) (comment out) CustomLog logs/access_log combined
- (new) (add) CustomLog logs/access_log liferay
- (old) (leave as is) LogFormat "%h %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-Agent}i\"” combined
- (new) (add) LogFormat "%h %l %u %t %m %f \"%r\" %>s %b \"%{Referer}i\" \"%{User-Agent}i\" \"%U\" \"%q\" %T %D %{ANONYMOUS_USER_ID}C %{JSESSIONID}C %{hubspotutk}C %{OSB_USER_ID}C %{OSB_COMANY_ID}C” liferay
- apache.conf
- (old) (replace) match => { "message" => "%{IPORHOST:client_ip} (?:%{DATA:remote_log_name}|-) (?:%{USERNAME:remote_user_id}|-) \[%{HTTPDATE:timestamp}\] %{WORD:request_method} %{DATA:file_name} \"%{WORD:request_method} (?:%{URIPATHPARAM:relative_request_path}|/&|/https&|\*) HTTP/%{NUMBER:http_version}\" %{NUMBER:request_status} (?:%{NUMBER:bytes:int}|-) \"(?:%{DATA:referrer}|-)\";? \"(?:%{DATA:user_agent}|-)\" \"(?:%{DATA:relative_path}|-)\" \"(?:%{DATA:query_string}|-)\" %{NUMBER:time_in_seconds:int} %{NUMBER:time_in_micro_seconds:int}”
/**
* Copyright (c) 2000-present Liferay, Inc. All rights reserved.
*
* This library is free software; you can redistribute it and/or modify it under
* the terms of the GNU Lesser General Public License as published by the Free
* Software Foundation; either version 2.1 of the License, or (at your option)
* any later version.
*
* This library is distributed in the hope that it will be useful, but WITHOUT
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
AUI().ready(
'aui-io-request',
'datatype-xml',
'liferay-portlet-url',
function(A) {
window.typeList = [
{
name: 'Div',
template: '<div>$</div>',
type: 'div'
AUI().ready(
'aui-io-request',
'datatype-xml',
'liferay-portlet-url',
function(A) {
var addInfo = function(node) {
var articleId = node.attr('data-article-id');
var levelPath = node.attr('data-level-path');
var content = node.getContent();
<root available-locales="en_US" default-locale="en_US">
<dynamic-element fieldNamespace="ddm" indexType="keyword" localizable="true" name="element" readOnly="false" repeatable="true" required="false" showLabel="true" type="ddm-separator" width="">
<dynamic-element dataType="string" indexType="keyword" localizable="true" name="content" readOnly="false" repeatable="false" required="false" showLabel="true" type="textarea" width="small">
<meta-data locale="en_US">
<entry name="label">
<![CDATA[Content]]>
</entry>
<entry name="predefinedValue">
<![CDATA[]]>